Я думаю, что необходимо перенести код в <?php ... ?>
. Попробуйте этот файл:
<?php
phpinfo();
?>
По умолчанию содержанием файла PHP является HTML, который отправляется нетронутый в браузер. Маркеры <?php
и ?>
отметьте запуск и конец кода PHP, который интерпретируется PHP.
Можно использовать команду r sed для чтения в файле. Например, для соответствия строке ее числом:
sed '2 r /tmp/file2.txt' /tmp/file1.txt
Или если Вы предпочитаете соответствовать строке ее содержанием:
sed '/^line 2/ r /tmp/file2.txt' /tmp/file1.txt
Это - стандартная команда и не полагается ни на какие расширения GNU, таким образом, она должна работать через различные sed реализации.
Команды выше печатают результат на своем стандартном выводе. Если Вы хотите изменить исходный файл, добавьте -i
опция сразу после sed (это будет работать над Linux и Cygwin, но не во всех системах Unix).
Кроме того, sed
можно также сделать это с awk
:
awk '1; /line 2/ { while(getline < "file2.txt") print }' file1.txt
Это вставит содержание file2.txt
каждый раз line 2
встречен.
1
блок по умолчанию { print $0 }
.
Это отправляет его вывод в стандартный вывод, если Вы хотите перезаписать file1.txt
сохраните вывод во временный файл и перезапись:
awk '1; /line 2/ { while(getline < "file2.txt") print }' file1.txt > file1.txt.tmp
mv file1.txt.tmp file1.txt
Для фиксированного сопоставления строк ==
было бы более надежным, например, соответствовать упомянутой строке используют это условное выражение:
awk '1; $0 == "\"zend_extension=/usr/local/Zend/lib/Optimizer-3.3.9/php-5.2.x/ZendOptimizer.so\"" { while(getline < "file2.txt") print }' file1.txt
Обратите внимание, что это должно соответствовать целой строке.