Symfony2: phpinfo () используя шаблон ветки для макета?

Twig не будет обрабатывать теги PHP. Следовательно, задача создать phpinfo() страница на основе макета (скажем, base.html.twig).

Можно ли сбросить содержимое HTML phpinfo() в какую-то переменную и передать его как содержимое тела в макет? Или есть лучший способ продолжить?

5

Решение

Просто захватить вывод phpinfo() с выходной буферизацией и передайте ее в шаблон.

ob_start();
phpinfo();
$phpinfo = ob_get_clean();

echo $twig->render('phpinfo.html.twig', array('phpinfo' => $phpinfo));
6

Другие решения

Это дополнение к ответу от Федеркуна.
В контроллере:

ob_start();
phpinfo();
$phpinfo = ob_get_contents();
ob_end_clean();
return $this->render('phpinfo.html.twig', array(
'phpinfo'=>$phpinfo,
));

Не забудьте поставить | сырой в ветке!

{{ phpinfo | raw }}
2

class DefaultController extends Controller
{
/**
* @Route("/", name="index")
* @Method("GET")
*/
public function index()
{
ob_start();
phpinfo();
$phpinfo = ob_get_clean();

return new Response(
'<html><body>'.$phpinfo.'</body></html>'
);
}
}
0
По вопросам рекламы [email protected]