Symfony2创建枝条扩展

时间:2014-12-06 11:49:42

标签: symfony twig twig-extension

我想创建一个简单的枝条扩展({{imgWidth(...)}}),可以调用getimagesize()并返回服务器上图像的widthheight

我按照你可以找到here的指示。

当我重新加载页面时,我只能看到一个空白页面 - error.log告诉我

  

PHP致命错误:第4773行/var/www/fms/app/cache/dev/appDevDebugProjectContainer.php中找不到类'Fms \ MediaBundle \ Twig \ Extension \ ImgsizeExtension'

MediaBundle\Resources\config\services.yml中的服务如下所示:

services:
    twig.extension.imgsize:
        class: Fms\MediaBundle\Twig\Extension\ImgsizeExtension
        tags:
            - name: twig.extension

是:

<?
// src/Fms/MediaBundle/Twig/Extension/ImgsizeExtension.php
namespace Fms\MediaBundle\Twig\Extension;

class ImgsizeExtension extends \Twig_Extension
{
    public function getFunctions()
    {
        return array(
            new \Twig_SimpleFunction('imgsize', array($this, 'imgWidth'))
        );
    }

    public function imgWidth($mediaId = 0, $mediaSize = 'L')
    {
        // ...
        return $mediaId;
    }

    public function getName()
    {
        return 'imgsize';
    }
}

通过控制台清除缓存或手动也没有帮助。

1 个答案:

答案 0 :(得分:2)

<?更改为<?php。我复制了你的代码,在这个修改中,symfony终于找到了这个类。