Выполните файл PHP и верните результат в виде строки

Предположим, у меня есть следующий файл – template.php :

 <?php $string = 'Hello World!'; ?> <html> <head> <title>Test Page!</title> </head> <body> <h1><?= $string; ?></h1> <p>You should see something above this line</p> </body> </html> 

Я знаю, что я могу использовать file_get_contents() чтобы получить содержимое файла в виде строки, которое я могу затем манипулировать по мере необходимости. Однако file_get_contents() не выполняет инструкции PHP.

Я успешно использовал cURL, чтобы получить доступ к рендеринговой версии файла, но он выглядит довольно медленным и неуклюжим, добавляя довольно много времени на выполнение страницы – что, я думаю, связано с выполнением DNS-поиска ,

Итак, как я могу получить содержимое template.php в строку, а там есть полезный PHP?

Это должно сделать это:

 ob_start(); include('template.php'); $returned = ob_get_contents(); ob_end_clean(); в ob_start(); include('template.php'); $returned = ob_get_contents(); ob_end_clean(); 

Если вам не нужно делать это в PHP, вы можете выполнить php-скрипт из командной строки и передать его в текстовый файл, например:

 php -f phpFile.php > output.html