Мне нужно повторить весь контент включенного файла. Я пробовал следующее:
echo "<?php include ('http://www.example.com/script.php'); ?>"; echo "include (\"http://www.example.com/script.php\");";
Но не работает? Поддерживает ли PHP это?
Просто делать:
include("http://www.mysite.com/script.php");
Или:
echo file_get_contents("http://www.mysite.com/script.php");
Заметки:
allow_url_fopen
для вашей установки PHP. Некоторые хосты отключают его. Самый короткий путь:
readfile('http://www.mysite.com/script.php');
Это будет напрямую выводить файл.
Echo печатает что-то в выходном буфере – он не обрабатывается PHP. Если вы хотите что-то включить, просто сделайте это
include ('http://www.mysite.com/script.php');
Вам не нужно печатать исходный код PHP, когда вы пишете исходный код PHP.
Посмотри на это! Как получить вывод PHP в переменную?
Не совсем уверен, что вы спрашиваете, но вы не можете действительно что-то добавить через http и ожидать увидеть код, так как сервер будет анализировать файл.
Если «script.php» является локальным файлом, вы можете попробовать что-то вроде:
$file = file_get_contents('script.php'); echo $file;
Это не может быть точным ответом на ваш вопрос, но почему бы вам просто не закрыть инструкцию echo, вставить свой оператор include, а затем добавить новую инструкцию echo?
<?php echo 'The brown cow'; include './script.php'; echo 'jumped over the fence.'; ?>
Мэтт является правильным с readfile()
но также может быть полезно, если кто-то readfile()
в PHP-файлы для обработки функций вручную для fpassthru
<?php $f = fopen($filepath, 'r'); fpassthru($f); fclose($f); ?>