Twigにsubstr_countを使用したいと思っていますが、既に存在しますか?このようなことをしたい。Twigの部分文字列
<?php
$text = 'This is a test';
echo strlen($text); // 14
echo substr_count($text, 'is'); // 2
私はエクステンションを行うことができますが、これは既に私が逃したものであるかもしれません。
Twigにsubstr_countを使用したいと思っていますが、既に存在しますか?このようなことをしたい。Twigの部分文字列
<?php
$text = 'This is a test';
echo strlen($text); // 14
echo substr_count($text, 'is'); // 2
私はエクステンションを行うことができますが、これは既に私が逃したものであるかもしれません。
私は拡張子
namespace AppBundle\Twig;
class SubStrCountExtension extends \Twig_Extension
{
public function getFunctions()
{
return array(
new \Twig_SimpleFunction('substr_count', array($this, 'substr_count')),
);
}
public function getName()
{
return 'substr_count_extension';
}
public function substr_count($str, $char)
{
return substr_count($str, $char);
}
}
そしてservices.yml
私はsymfonyの3.2.8で解決策を使用しますが、説明にこのコードブロックが内部である必要があります言っていない
app.twig_extension.substr_count_extension:
class: AppBundle\Twig\SubStrCountExtension
tags:
- { name: twig.extension }
で行きました:サービス このエラーが表示されない場合: 構成をロードできる拡張子がありません.....
このコード必要がありますが、これは正しいですサービス内にある:
services:
app.twig_extension.substr_count_extension:
class: AppBundle\Twig\SubStrCountExtension
tags:
- { name: twig.extension }
は最後に、小枝での正しい使用は、次のとおりです。これについて
tu placa es: {{substr_count(datos.picoyplaca,4)}}
よろしく
どのように?
{%set count = text|split('is')|length-1 %}
これは質問に対する答えを提供しません。十分な[評判](https://stackoverflow.com/help/whats-reputation)があれば、[投稿にコメントする]ことができます(https://stackoverflow.com/help/privileges/comment)。代わりに、[質問者からの明確化を必要としない回答を提供する](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- i-do-代わりに)。 - [レビューの投稿](レビュー/低品質の投稿/ 16688233) –
@ ADreNaLiNe-DJなぜですか? – Zizouz212
なぜですか?トピックのスターターは、小枝で文字列の部分文字列を数える方法について質問しました。この1行のコードはこれを行います。これには何が問題なのですか? –
あなたのカスタム関数/フィルタを自分の個人で計画している場合を除いて、カスタムクラスに複数の関数/フィルタを追加できるように、クラスの名前をより一般的な名前に変更しますクラス。 – Rooneyl
良い叫び声!私は今これを行う。ありがとう。 –