truncate (変数の修飾子) - PHPプロ!マニュアル

Smartyマニュアル

変数の修飾子 - truncate

truncate

指定したキャラクタ数(デフォルトは80)で変数を切り捨てます。 第2パラメータには、変数が切り捨てられた時に終端に付加する文字列を指定する事が出来ます。 指定する文字列の長さは元の切り捨ての長さの中に含まれます。 デフォルトでは、truncate は単語の境界で切り捨てを行います。 厳密なキャラクタ数で切り捨てたい場合には第3パラメータに TRUE を渡します。

パラメータの位置 必須 デフォルト 概要
1 integer No 80 切り捨てを行うキャラクタ数
2 string No ... 切り捨てが発生した際に終端に付加するキャラクタ。 この長さは切り捨て長さの設定に含まれません。
3 boolean No FALSE 切り捨てを単語の境界で行うか(FALSE )、厳密なキャラクタ数で行うか(TRUE )
4 boolean No FALSE 切り捨てを文字列の終端で行うか(FALSE )、 文字列の中盤で行うか(TRUE )。この設定がTRUE の場合、 単語の境界が無視されることに注意。

例 5-21. truncate

<?php
$smarty
->assign('articleTitle''Two Sisters Reunite after Eighteen Years at Checkout Counter.');
?>

テンプレート

{$articleTitle}
{$articleTitle|truncate}
{$articleTitle|truncate:30}
{$articleTitle|truncate:30:""}
{$articleTitle|truncate:30:"---"}
{$articleTitle|truncate:30:"":true}
{$articleTitle|truncate:30:"...":true}
{$articleTitle|truncate:30:'..':true:true}

出力

Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after...
Two Sisters Reunite after
Two Sisters Reunite after---
Two Sisters Reunite after Eigh
Two Sisters Reunite after E...
Two Sisters Re..ckout Counter.


Pick Up Q&A

Q
セッションがいいのか、それともデータベースがいいのか教えて下さい。
 このエントリーをはてなブックマークに追加 
A
>ボタンをクリックしたら選んだ商品情報を持っておきたいと思っています。 そのくらいのことならセッションもしくはCookie(期限短め:場合によってはブラウザ閉じるまで)でいいんじゃないですかね。 #わ...

>>続きを読む

一つの目安として、ECサイトの購入情報など絶対に消えてはいけないものはDBに、カートなどの一時的に使用する情報や、ユーザに任意のタイミングで消去されても構わないものはセッションにと使い分けるといいでしょう。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)