草庐IT

Twig_SimpleFilter

全部标签

php - 使用 TWIG 模板呈现干净整洁的 HTML

我一直在玩Twig(版本1.9.1)作为PHP模板引擎,我对呈现的HTML并不完全满意因为添加了额外不需要的换行符和空格,这使得结果非常不整洁。为了使我的模板更加灵活,我使用了macros它可以以嵌套的方式相互调用,它本身工作正常,但似乎让事情变得更糟。例如,元素呈现如下:sometextwithsomehtml我知道部分原因是我的方式twig模板已格式化,就好像我删除了空行并从中缩进一样,呈现的HTML看起来更整洁了一点,但并不完全:下面的输出显示了渲染的在元素的开始和结束之间仍然有2个换行符,尽管相应的模板不包含任何空行或空格!:sometextwithsomehtml尽管它有帮助

php - Symfony2 从 phpunit 测试中的 Twig 模板访问全局变量

我有一个带有{{app.user}}的Twig模板。问题是,在phpunit测试(一个扩展WebTestCase的类)中,它被定义为NULL。使用token(http://symfony.com/doc/current/cookbook/testing/simulating_authentication.html)模拟身份验证或模拟HTTP身份验证(http://symfony.com/doc/current/cookbook/testing/http_authentication.html)没有帮助。那么如何从phpunit测试中设置一个twig全局变量呢?为什么模拟身份验证在这种情

php - Symfony Twig 覆盖特定的表单行

我有一个表单Twig模板,我想在其中使用原始过滤器(它包含html)解析特定字段的帮助文本。该字段在名为Clinic的表单中称为邮政编码根据这里http://symfony.com/doc/current/cookbook/form/form_customization.html#how-to-customize-an-individual-field表单模板:{%extends'AgriHealthAhpBundle::admin.html.twig'%}{%form_themeform'AgriHealthAhpBundle:Form:fields.html.twig'%}{%bl

php - Twig 不更新 symfony 中的更改

我在开发人员模式和Windows10中使用Symfony2.8。当我更新模板Twig时,我总是必须清除缓存以更新渲染。我查看了文件夹缓存和日志的权限,我拥有必要的权限。有什么帮助吗? 最佳答案 转到应用程序配置文件(默认情况下位于根目录的../app/config/config.yml中)。滚动到twig配置设置(在twig:下)并将缓存值(应指向缓存目录)更改为false,如下所示:twig:cache:false如果您没有看到任何缓存配置条目,只需添加上面的行即可。或者您可以在web/app_dev.php上禁用twig缓存,只

php - 如何在 Twig 中使用 PHP 模板引擎而不是 Silex 中的 Twig 语法

在Silex中,我可以使用Twig模板,但我想使用Twig的PHP引擎,而不是Twig语法。例如thisguide描述了如何为Symfony而不是Silex做到这一点。我的Silexindex.php看起来像:$app->register(newSilex\Provider\TwigServiceProvider(),array('twig.path'=>__DIR__.'/views',));$app->get('/',function()use($app){return$app['twig']->render('index.html.php',array('name'=>'Bob'

php - 我不能在 Twig_Extension 类中将内部函数与 Twig_SimpleFilter 一起使用

我有一个使用Symfony2的基于Twig的项目。由于Symfony2的特性,使用了命名空间。因此,我无法在命名空间之外提供全局函数。这是我的Twig扩展类:newTwig_SimpleFilter('shortKey','myCustomFilterFunction'));}publicfunctionmyCustomFilterFunction(){//codehere...}结果:FatalErrorException:错误:调用未定义函数myCustomFilterFunction()为什么:因为,Twig试图找到这个函数,但它在一个类中。如果这次我将它移到类之外,我将面临命名

php - 如何在 Twig 中正确循环三维数组?

我有一个这样的数组设置;而且我似乎无法用Twig遍历这些值:array(size=1)'hash'=>array(size=7)0=>array(size=4)'key1'=>"val"'key2'=>"val"'key3'=>"val"'key4'=>"val"1=>array(size=4)'key1'=>"val"'key2'=>"val"'key3'=>"val"'key4'=>"val"...我正在使用的模板代码(在第n次迭代中):{%foriinhash%}{%forjini%}{{j.key1}}{{j.key2}}{{j.key3}}{{j.key4}}{%endfor

php - Symfony2 - 在 Twig 中获取一个实体而不是 PersistentCollection

我正在使用symfony2,但无法在twig中获取相关实体。所以我有我的主要实体,我们称它为Post,它具有OneToMany关系:/***@ORM\OneToMany(targetEntity="Comment",mappedBy="Post",cascade={"persist","remove"})*/private$comments;我用我的Controller将它传递给twig,我可以访问每个属性,但是当我尝试访问具有“Comment”之类关系的属性时,我得到一个“Doctrine\ORM\PersistentCollection)"里面有很多私有(private)属性(pr

php - Symfony 表单 : disable "required" for a field from Twig

我正在尝试禁用Symfony内置表单中的文件的前端HTML5验证。在Twig中,我使用这段代码:{{form_widget(form.email,{'attr':{'class':'form-controlinput-lg','novalidate':'novalidate}})}}但该字段仍被认为是必需的。我做错了什么? 最佳答案 您可以在表单类型中设置它以禁用字段验证。->add('test',null,array('required'=>false))如果你想为整个领域禁用它,你可以尝试这样的事情:{{form_start(f

php - Laravel - Twig View 中的 print_r

我希望有一个“简单”的问题,那就是我如何打印_r或至少查看twig文件中所有已定义变量的内容。我试过:{{variable}}(其中变量是为View设置的数组$viewData['variable']=array('1','2','3');在Controller中。我也试过:{{$variable}}会出错。我只想知道我的数组在twig文件中有什么可用。 最佳答案 您可以使用内置的{{dump()}}函数。查看documentation.如果你在括号中没有任何值的情况下使用它,它将转储所有可用的变量。要仅转储您的数组,您可以这样做: