Чтение эхо-вывода из другого файла PHP

Я хочу, чтобы 1 файл PHP "запустил" (включил?) другой файл PHP на том же сервере и получил доступ к его эхо-выводу в виде строки.

Как мне это сделать в PHP? Любые встроенные функции для этого?

Или какой-нибудь лучший способ выполнить другой файл PHP и получить его вывод?


person rzlines    schedule 10.03.2009    source источник


Ответы (2)


Для этого можно использовать буферизацию вывода PHP:

ob_start(); // begin collecting output

include 'myfile.php';

$result = ob_get_clean(); // retrieve output from myfile.php, stop buffering

$result будет содержать текст.

person Jesse Rusak    schedule 10.03.2009
comment
Я бы тоже ответил ob_start(), а ты нет - person Wieczo; 10.03.2009

Вы не можете включить PHP-скрипт, который находится на внешнем веб-сайте/сервере, в свой локальный скрипт, если только вы не включите allow_url_include в своем php.ini (если у вас есть к нему доступ)

Вместо этого вы можете позволить этому веб-сайту/серверу отобразить страницу и получить результирующий вывод HTML в вашем локальном скрипте, выполнив следующие действия:

$result = file_get_contents('http://127.0.0.1/myfile.php');
person Typewar    schedule 18.05.2017
comment
это может быть хорошим ответом, когда у нас есть две среды, и в некоторых случаях нам нужно, чтобы одна из них предоставляла информацию/услуги для другой. URL-адрес может быть лучше настраиваемым :) Спасибо Typewar - person Dina; 24.10.2017