Cakephpで中国語の文字列をインターセプトする方法は?
当初、中国語の文字列をインターセプトする独自のヘルパーを作成しようと考えていましたが、truncate メソッドが Cakephp の Text ヘルパー クラスですでに提供されているとは予想していませんでした。以下は truncate メソッドのプロトタイプです。
Quote
truncate
truncate(string $text, int $length=100, array $options)
文字列を $length まで切り取り、サフィックスを追加しますテキストが $length より長い場合、'exact' が false として渡されると、次の単語の終わりの後に切り捨てが行われます。'html' が true として渡されると、html タグは尊重されます。
Text->truncate メソッドには 3 つのパラメータがあります:
- $text: インターセプトする必要がある文字列
- $ length: インターセプトする長さ。デフォルトでは 100 文字をインターセプトします。
- $options: 配列パラメーター。終了は、インターセプトされた文字列の末尾に終了文字列を追加することを意味します。exact が false の場合、単語は切り詰められません。html が true の場合、html タグは切り詰められません。
次のコードデモンストレーション tuncate メソッドの使用方法:
echo $this->Text->truncate(
'The killer crept forward and tripped on the rug.',
22,
array(
'ending' => '...',
'exact' => false
)
);
ログイン後にコピー
上記のコードは、
The Killer crept...を出力します。注:中国語の文字列をインターセプトしている場合は、exact を true に設定するのが最善です。そうしないと、中国語の文字は切り捨てられません