2
我是symfony的新手,我想使用PHP模板引擎。以下是我为了使其工作而遵循的步骤。在config.yml在symfony中找不到PHP模板
templating:
engines: ['twig', 'php']
1.Enabled PHP模板引擎2.Defined在routing.yml中
hello:
path: /hello/{name}
defaults: { _controller: AppBundle:Hello:index, name:World }
3.Created HelloController中我控制路径和默认值。 php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
class HelloController extends Controller
{
public function indexAction($name)
{
return $this->render('hello/name.html.php', array(
'name'=>$name
));
}
}
个 4.Created视图\程序\资源\意见\你好\ name.html.php
<!-- app/Resources/views/Hello/name.html.php -->
Hello <?php echo $name ?>!
,但是当我试图访问http://127.0.0.1:8000/hello,它让我看到下面的错误
模板“hello/name.html.php”不存在。
500内部服务器错误 - InvalidArgumentException
我改变的模板文件夹名称从“你好”到“你好”,但还是同样的错误。也试图渲染这样的模板
return $this->render(
'AppBundle:Hello:index.html.php',
array('name' => $name)
);
但没有运气,我必须在这里丢失的东西。有人能指导我正确的方向吗?
注:你好/ name.html.twig加载没有任何错误
谢谢!
http://symfony.com/doc/current/cookbook/templating/PHP.html 这个页面说,你需要使用注释: /** * @Template(发动机=“PHP “) */ 你试过 用它? – Grzegorz
文件夹名称应为'hello'并在更改后清除缓存。 – malcolm