草庐IT

Twig_SimpleFilter

全部标签

php - 在 Twig 中如何比较日期是否在 X 天内?

如果与该行关联的日期少于30天,我正在使用twig标记表中的一行。Twig的文档指出,要比较两个日期对象,必须先将对象转换为日期,然后再进行比较:{%ifdate(yourDate)但是,它没有指定如何为比较的左侧传递日期格式,我知道Twig的日期函数是PHP日期的某种包装器。在PHP中我通常会调用:$myDate=\DateTime::createFromFormat("m/d/Y",$myDate);但在Twig中显然没有办法指定原始日期的格式以便将其转换为另一种格式,或者至少它不在文档中。这是我试过的:{%ifdate(d.LastDate)>date('-30days')%}.

php - Twig 中的舍入数字

有人知道如何将Twig中的数字舍入到最接近的整数吗?例如:2.6=>2我尝试使用|number_format但它没有将它们四舍五入。 最佳答案 @olivierw的回答是正确的,但您还可以使用另一个技巧。Twig确实有//除法结果的楼层下降运算符。您可以将它用作{{variable//1}},它等于intval(floor(variable))。 关于php-Twig中的舍入数字,我们在StackOverflow上找到一个类似的问题: https://stac

php - 在没有 Twig 的情况下使用 Symfony 表单

我已经设法将symfony表单设置为在我的项目中独立工作。但是我只能让它与Twig一起工作。我可以在没有Twig的情况下呈现表单吗?我目前的做法是:#Controllerecho$twig->render('index.html.twig',array('form'=>$form->createView(),));#TwigFile{{form_widget(form)}}是否可以在没有Twig的情况下呈现表单?非常感谢任何帮助 最佳答案 很难找到关于如何使用Symfony的表单组件1)没有Twig和2)没有Symfony的资源。我

php - Drupal 8 Twig 不适用于调试

我一直在研究Drupal8,在状态报告中看到它建议我应该添加TwigC扩展,在添加它之后,我在主题模板文件中使用Kint时开始出现以下错误。Warning:file(/Users/jafacakes2011/Sites/site/recipe-hub/vendor/twig/twig/lib/Twig/Environment.php(403):eval()'dcode):failedtoopenstream:NosuchfileordirectoryinDrupal\kint\Twig\KintExtension->kint()(line78of/Users/jafacakes2011

php - Silex 微框架和 Twig : enable debug

我的问题:如何允许在Silex的Twig模板中使用debug?我正在研究Silex微框架(一个利用Symfony的PHP框架)。在使用Twig模板系统时,我想输出一个特定的对象。通常我会使用var_dump($app);并在Twig中使用{%debugapp%}。我的问题是让调试(将Silex自己的调试设置为true对Twig没有帮助)与Silex一起工作。立即调用debug将导致错误消息:Twig_Error_Syntax:Unknowntagname"debug"in...调试调用如下所示:{%debugapp%}我找到了有关如何配置Twig的config.yml文件以正确使用de

php - Symfony2 : disable Twig cache

我正在尝试在生产模式下禁用twig缓存,或强制它重新编译我的View。我正在使用KnapLapsSnappyBundle生成一些PDF(同样的问题出现在DomPDF上),并且我要呈现动态内容。在开发模式下,我可以修改一些文本,甚至一些css属性,这些更改会立即生效。但是在prod模式下,我需要缓存:清除,或者rm-rfapp/cache/prod/twig/*来查看更改。我在我的config.yml中为Twig部分尝试了以下选项(不是同时)cache:"/dev/null"cache:falseauto-reload:~在生成和重新生成我的pdf时,我还尝试了一些带有标题的东西:$ht

php - Twig 检查数组中是否有任何值

如何检查数组是否提供了任何值。在PHP中,我像这样添加到数组中:$myArray['index1']=$someVal1;$myArray['index2']=$someVal2;问题是,当我在Twig中使用|length过滤器时,它会在$someVal1或$someVal2没有值时给出结果(这些值是从表单中获取的,因此不必填写)。所以我想检查整个数组中是否没有提供值,所以:{%ifmyArray|what_filter_here?==0|empty|whatever%}Thistextshouldnotappear{%endif%}可以在一个条件下完成吗?

php - Twig 中的 "While"和 "repeat"循环

有什么好的方法可以在Twig中使用while和repeat循环吗?这是一个如此简单的任务,但如果没有宏,我找不到任何好的和简单的东西。至少做一个无限循环,然后在一个条件下打破?编辑:我的意思是类似do{//loopcode}while(condition)或while(condition){//loopcode}编辑2:看起来它不受twig原生支持,原因与continue;或break;语句都不支持。https://github.com/twigphp/Twig/issues/654 最佳答案 您可以通过使用足够高的循环限制(100

php - Symfony2/ Twig : Generate Alternate Absolute URL Path for use with CDN?

这stackoverflowsolution几乎回答了我的问题。但我想在Twig中生成CDNurl,而不仅仅是资源。我想为动态内容生成它们。所以我认为Assetic的调整不是值得关注的领域。现在,我可以在parameters.ini中设置CDN_url并在我的url中使用它。我的代码看起来像这样:{{CDN_Url}}{{url('route',{'param1':'value'}}..代码维护是我不喜欢的一个主要原因这个选项。然后你可以做一些事情,比如检查/cdn/的路由以生成CDNurl和其他所有基于域的东西。我不必四处奔走改变很多变量。如果我想停止生成CDNurl。我可以只修改路

php - Symfony:有什么方法可以使用模板的相对路径来渲染 Twig 模板吗?

在TemplateNamingandLocationsSymfony文档中的部分说:Symfony2usesabundle:controller:templatestringsyntaxfortemplates.Thisallowsforseveraldifferenttypesoftemplates,eachwhichlivesinaspecificlocation:AcmeBlogBundle:Blog:index.html.twig:Thissyntaxisusedtospecifyatemplateforaspecificpage.Thethreepartsofthestrin