草庐IT

Twig_Filter

全部标签

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 - 使用 filter 方法过滤 Laravel Eloquent 集合

$events=Event::all();if(isset($scheduling)&&$scheduling!=="All"){$events=$events->filter(function($event)use($scheduling){return$event->where('scheduling',$scheduling);});}$events=$events->get();有人可以更正这段代码吗?内部过滤器不工作。无论是否应用过滤器,结果都相同。我需要根据条件应用这样的批处理过滤器 最佳答案 您不必在其中使用where

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();}我一

php - SlimPHP - 扩展 Twig (函数)的奇怪错误

我在PHPSlim(最新版本)中有一些简单的应用程序,它是一个简单的网站,可以从数据库获取数据并将其显示在twig模板上。没有什么花哨。只要我不尝试向twig添加自定义功能,一切都会完美无缺。当我向twig添加自定义函数时,在某些服务器上(在本地主机laragoon上工作正常,在具有相同php版本的生产服务器上我没有得到这个错误:fatalerror:无法在...第4行的twig.php中实例化抽象类Twig_Function下面是我的twig.php-错误连接到newTwig_Function,但老实说我在这里看不到任何抽象类......,在本地主机Laragon上它工作正常,生产有

php - filter_input(INPUT_GET, ‘my_string’, FILTER_SANITIZE_STRING); VS 正则表达式预匹配 PHP

出于经验哪个更好用filter_input(INPUT_GET,‘my_string’,FILTER_SANITIZE_STRING);或者用于清理用户输入数据的正则表达式preg_match? 最佳答案 我更喜欢filter_input而不是正则表达式-因为它更容易阅读。 关于php-filter_input(INPUT_GET,‘my_string’,FILTER_SANITIZE_STRING);VS正则表达式预匹配PHP,我们在StackOverflow上找到一个类似的问题:

php - 如何传递对回调函数的引用以在带有额外参数的 array_filter 中使用?

我的方法的签名如下所示:publicfunctionProgramRuleFilter(&$program,$today=null){当我这样调用它时,$programs=array_filter($programs,array($this,'ProgramRuleFilter'));一切都按预期进行。ProgramRuleFilter方法更新$program数组,如果成功则返回true/false,从而正确过滤$programs。但是,现在我想向过滤器传递一个额外的参数,$today。我该怎么做?我正在尝试像这样调用它:$programs=array_filter($programs

php - Twig nl2br 过滤器不适用于实体

我有一个带有__toString()方法的地址实体,如下所示:publicfunction__toString(){$result=$this->getStreet();if($this->getStreet2())$result.='\n'.$this->getStreet2();$result.='\n'.$this->getZipCode().''.$this->getCity();return$result;}在我的模板中,我应用了Twignl2brfilter在实体上:{{user.address|nl2br}}但我仍然得到转义的\n:1107西亚当斯大道\n90007加利福

php - 如何使用 Twig 生成随机字符串?

我有一个包含优惠券代码的输入。用户可以填写自定义代码,但我想给他们一个默认代码。我现在有以下代码:我想用随机字符串替换RANDOM_CODE。我认为这与问题无关,但form.code包含原始优惠券代码。我使用相同的表格进行编辑。根据Twig文档,可以使用random()生成随机数,甚至可以使用random('abcdefgh...'),但我想生成一个具有特定长度的随机字符串。我知道我至少可以使用两种方法来做到这一点:在Controller中生成默认的随机代码,然后将其传递给View;或创建一个带有为我生成随机字符串的函数的Twig扩展。知道我很好奇是否有一种方法可以仅使用Twig的内置

php - 在 Foreach 循环中使用 FILTER() - PHP Goutte

我有这个代码require_once'vendor/autoload.php';使用Symfony\Component\DomCrawler\Crawler;$html=HelloWorld!ThisisspanHelloCrawler!ThisisspanHTML;$crawler=newCrawler($html);foreach($crawler->filter('body')as$domElement){$domElement->filter('span');}我遇到了这个错误。Fatalerror:CalltoundefinedmethodDOMElement::filter