为什么symfony 3.4中的php模板呈现会打印http头?
我正试图从一个杂乱的PHP模板结构(包含许多重复的代码)中转移出来,以帮助我们在extends中拥有类似的twig理念 我们遇到的问题是,一些模板正在呈现HTTP头: Form/Form.html.php的代码是:为什么symfony 3.4中的php模板呈现会打印http头?,php,symfony,symfony-3.4,Php,Symfony,Symfony 3.4,我正试图从一个杂乱的PHP模板结构(包含许多重复的代码)中转移出来,以帮助我们在extends中拥有类似的twig理念 我们遇到的问题是,一些模板正在呈现HTTP头: Form/Form.html.php的代码是: <?php /** * @var \Symfony\Bundle\FrameworkBundle\Templating\TimedPhpEngine $view * @var \Symfony\Bundle\FrameworkBundle\Templating\He
<?php
/**
* @var \Symfony\Bundle\FrameworkBundle\Templating\TimedPhpEngine $view
* @var \Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper $formHelper
* @var \Symfony\Component\Templating\Helper\SlotsHelper $slotsHelper
* @var \Symfony\Component\Form\FormView $form
*/
$formHelper = $view['form'];
$slotsHelper = $view['slots'];
?>
<div class="form-wrapper">
<?php $slotsHelper->output('form-start', $formHelper->start($form)) ?>
<?php $slotsHelper->output('form-widget', $formHelper->widget($form)) ?>
<?php $slotsHelper->output('form-end', $formHelper->end($form)) ?>
</div>
如果我用返回的字符串更改这个句子,Symfony只打印这个返回的字符串,而不打印标题
表单呈现正确,但由于我无法理解的原因,Symfony正在打印HTTP头
谢谢 好吧,在询问之后,我仍然在研究它,我终于找到了原因,也多亏了这一点 我已经执行了render,但是render会将呈现的模板作为响应返回,因此会返回HTTP头。renderView只返回渲染的模板 所以我不得不改变路线:
$this->render("Form/Order/form.html.php", ['form' => $orderForm->createView()])
到
现在,它按预期工作。很高兴您找到了解决方案。你能写下什么地方出了问题以及你是如何解决的吗。链接到外部资源被认为不足以确定答案。谢谢
$this->render("Form/Order/form.html.php", ['form' => $orderForm->createView()])
$this->render("Form/Order/form.html.php", ['form' => $orderForm->createView()])
$this->renderView("Form/Order/form.html.php", ['form' => $orderForm->createView()])