草庐IT

twig-extension

全部标签

php - Twig 用一个变量设置一个变量名 [TWIG/PHP]

如何在Twig中使用另一个值的值设置变量的名称?我认为它会是这样的:{%setqueCount=loop.index%}{%forrow2inanswer+queCount%}但这行不通。同样从中创建一个字符串将打破循环(因为它不搜索字符串)。我知道如何在PHP中执行此操作,所以为了澄清起见,这就是我想要实现的目标:$count=1;$args["answer$count"]返回$args["answer1"]但这一次,不是使用字符串,而是操作性答案。提前致谢!MatsdeWaard。 最佳答案 您可以使用_context变量{%s

php - Slim + Twig - 如何在开发过程中关闭 Twig 缓存?

这是我将它注入(inject)到Slim容器中的TwigView://ViewsandTemplates//https://www.slimframework.com/docs/features/templates.html$container['view']=function($container){$settings=$container->get('settings');$loader=newTwig_Loader_Filesystem('templates');$twig=newTwig_Environment($loader,array('cache'=>'cache',))

php - 允许用户在 TWIG 中添加任何代码是一个安全漏洞吗?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭3年前。Improvethisquestion在我的应用程序中,我想允许用户添加他自己的Twig代码。但是,我不希望它执行任何后端代码(例如用于访问数据库或文件的PHP代码)。我已经使用php代码测试过.我可以看到PHP代码没有在Twig页面上执行。据我所知,我可以说除非调用扩展,否则无法在Twig文件中执行PHP代码(可以操作文件或数据库)。但是,我只想知道更多的建议。

php - Twig 过滤多个参数

我正在尝试创建一个可以处理2个参数的特定Twig过滤器。$documentURL=newTwig_SimpleFilter('documentURL',function($DocumentId,$UserId){$URL="http://example.example.com/start/".$DocumentId."/".$UserId."/";return$URL;});并将过滤器添加到渲染中:$twig->addFilter($documentURL);现在在模板中请求过滤器:{{documentURL(booking.docId,user.id)}}但是,我收到一个错误消息,指

php - 安装了 php71w-gd 并收到错误 GD Library extension not available with this PHP installation

我在centos7服务器和nginx网络服务器上使用laravel网络框架,我安装了php71w-gd,但当我想上传文件时仍然出现此错误Intervention\Image\Exception\NotSupportedExceptionGDLibraryextensionnotavailablewiththisPHPinstallation.你可能需要知道这个#php-i|grepgd/etc/php.d/gd.ini,gdgd.jpeg_ignore_warning=>1=>1 最佳答案 @HamedAbdollahi请检查以下步

php - 在 Twig 文件之间导入内容

我怎样才能拥有一个Twig文件,该文件从同一目录或子目录中的第二个Twig文件导入部分内容?我正在开发一个项目,其中多个Twig文件具有共同的内容,我试图避免在Twig文件之间复制和粘贴内容。所以,我想要一个包含共享标记的子目录,并简单地“导入”到主要Twig文件的相关部分。import.list.html.twig与主Twig文件位于同一目录中,我尝试了以下操作:{%extends"::base.html.twig"%}{%blocktitle%}StockBundle:StockController:index{%endblock%}{%blockbody%}Welcometoth

php - Silex v1.3 到 Silex v2 : Twig_Error_Runtime

我最近将一切正常的Silexv1.3项目迁移到了Silexv2。我收到一个Twig错误,我不明白原因Twig_Error_RuntimeinTemplate.phpline590:Neithertheproperty"request"noroneofthemethods"request()","getrequest()"/"isrequest()"or"__call()"existandhavepublicaccessinclass"Silex\Application"in"index.twig"atline5这是我的index.twig文件的前5行{%extends"layout.t

php - Twig - 在 twig 中模拟 PHP for 循环功能,迭代次数为 +5(或 +1 以外的任何值)

我如何在twig中模仿这个PHP功能?对于for循环的每次迭代,我需要将数字递增5。下面的PHP代码按预期工作:for($x=5;$x';}哪些输出:5,10,15,20,然而,twig中的这段代码无法按预期工作。{%foryinrange(0,20)%}{{y+5}} ,{%endfor%}哪些输出:5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25我也曾尝试为每次迭代设置y的新值,但这也不起作用...{%foryinrange(0,20)%}{{y+5}} ,{%sety=y+5%}{%endfor

php - 在没有服务器权限的情况下安装 PECL-Extension "SPL-Types"

我想在我的Web应用程序中使用SPLEnum,它是PECL扩展SPL类型的一部分。现在,我从未使用过扩展,所以我不知道它们是如何工作的。我已要求我的托管商安装该软件包,但由于服务器的安全原因,他们无法安装。是否有可能以某种方式手动包含文件,就像在Java中一样(手动将文件复制到网络服务器并包含它们)?感谢您的回答问候,弗洛 最佳答案 PECL包含用于编译成PHP的C扩展。因此,您需要在运行PHP的服务器上拥有适当的权限,而您永远无法在共享主机上获得这些权限。尝试找到一个类似的PEAR扩展,它们是用PHP编写的,并且与任何其他PHP文

php - Slim Framework 将数据传递给 Twig View

我正在尝试在Slim中构建一个页面,以显示订阅者的详细信息。我已经弄清楚如何在Controller中创建路由和相关方法,它们都可以正常工作。我将Twig用于View,但不知道如何从View访问订阅者。路线$app->get('/subscriber/{id}','SubscriberController:getSubscriber');订阅者ControllerpublicfunctiongetSubscriber($request,$response,$args){$subscriber=Subscriber::where('id',$args['id'])->first();}我一