PHP 文字列を最も近い単語まで切り詰める
文字列を特定の文字数制限まで切り詰めると、単語の途中で見苦しく切り取られる可能性があります。このニーズに応えるために、最も近い単語の末尾にあるテキストを正確に切り捨てる PHP コード スニペットを検討します。
解決策 1: Wordwrap を使用する
wordwrap 関数指定された最大幅に基づいてテキストを複数の行に分割し、単語の境界で区切ることができます。目的の切り捨てを実現するには、分割テキストの最初の行を単純に利用します。
$truncated = substr($string, 0, strpos(wordwrap($string, $limit), "\n"));
解決策 2: トークンベースの切り捨て
ただし、解決策 1制限があります。改行文字がカットオフポイントの前に現れると、テキストが途中で切り取られます。これを軽減するために、トークンベースの切り捨てを実装できます。
function tokenTruncate($string, $limit) { $tokens = preg_split('/([\s\n\r]+)/u', $string, null, PREG_SPLIT_DELIM_CAPTURE); $length = 0; $lastToken = 0; while ($length <= $limit && $lastToken < count($tokens)) { $length += strlen($tokens[$lastToken]); $lastToken++; } return implode(array_slice($tokens, 0, $lastToken)); }
結論
これらのソリューションを実装することで、PHP 文字列を最も近い単語で効果的に切り捨てることができます。クリーンで意味のある表示を保証します。
以上がPHP 文字列を単語の途中でカットせずに最も近い単語まで切り詰めるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。