Получить результаты включения в строку в PHP?

Скажем, файл test.php выглядит так:

<?php echo 'Hello world.'; ?> 

Я хочу сделать что-то вроде этого:

 $test = include('test.php'); echo $test; // Hello world. 

Может ли кто-нибудь указать мне правильный путь?

Редактировать:

Моя первоначальная цель заключалась в том, чтобы вывести PHP-код, смешанный с HTML, из базы данных и обработать его. Вот что я в итоге сделал:

 // Go through all of the code, execute it, and incorporate the results into the content while(preg_match('/<\?php(.*?)\?>/ims', $content->content, $phpCodeMatches) != 0) { // Start an output buffer and capture the results of the PHP code ob_start(); eval($phpCodeMatches[1]); $output = ob_get_clean(); // Incorporate the results into the content $content->content = str_replace($phpCodeMatches[0], $output, $content->content); } 

Использование буферизации вывода – лучший выбор.

 ob_start(); include 'test.php'; $output = ob_get_clean(); 

PS: Помните, что вы можете также вставлять выходные буферы в ваше сердце, если это необходимо.

test.php

 <?php return 'Hello World'; ?> 

 <?php $t = include('test.php'); echo $t; ?> 

Пока включенный файл имеет оператор возврата, он будет работать.

Вы также можете включить включенный файл, а не распечатать его. Затем вы можете захватить его в переменную, как и в своем втором примере.

 <?php return 'Hello world.'; ?> 
 $test = file_get_contents('test.php'); echo $test; //Outputs "Hello world.";