3097


PHP、SymfonyでテンプレートにTwigを使っています。

Twigのテンプレートに表示する文字列を、先頭N文字等で切り詰めたいのですが、テンプレート側で使える関数などがあるのでしょうか？

[ドキュメント](http://twig.sensiolabs.org/documentation)を見たところ、truncateというフィルタや関数は標準ではありませんでした。


CC BY-SA 3.0
2015-01-05T04:09:53.043
3096
2020-02-29T13:59:31.653
2020-02-29T13:59:31.653
32986
5444
question
php twig
Twigで文字列を切り詰めたい(truncate)


単純に文字列を切り詰めるには、Twig
1.6（[2012年2月にリリース](https://github.com/twigphp/Twig/releases/tag/v1.6.0)）から導入された
[`slice` フィルタ](http://twig.sensiolabs.org/doc/filters/slice.html)を使います。

リンク先ドキュメントページにもありますが、使い方は、次のようになります。

[code]

    {{ '12345'|slice(1, 2) }}
    
[/code]

`|slice()` の部分は `[]` で短く書くこともできます。`companyName` 変数に格納された文字列を先頭から5文字に切り詰める場合は、

[code]

    {{ companyName[:5] }}
    
[/code]

と書けます。

上記とは違って、切り詰めた場合には「...」を付加するといったことまで含めたtruncateを利用したい場合は、[Twig
Extensions](https://github.com/twigphp/Twig-extensions)を導入すれば `truncate`
フィルタを使えます。


CC BY-SA 3.0
2015-01-05T04:09:53.043
3097
2015-01-05T04:09:53.043
5444
3096
answer