PHP での文字列の切り詰め: 包括的なアプローチ
PHP では、表示される文字数を制限する必要がある状況に遭遇することがあります。文字列。これは通常、スペースを確保するか、長いコンテンツのプレビューのみを表示するために行われます。文字列を効率的に切り捨てるためのさまざまなテクニックを見てみましょう。
最初の n 文字を取得する
単純な切り捨ての場合は、PHP の substr() 関数を使用できます。たとえば、文字列の最初の 10 文字を取得し、文字が削除された場合に省略記号 (...) を追加するには、次のコードを使用できます:
$string = substr($string, 0, 10) . '...';
長さの最適化
切り詰められた文字列が常に希望の長さであることを確認するには、前に長さを確認します。 truncating:
$string = (strlen($string) > 13) ? substr($string, 0, 10) . '...' : $string;
この例では、最大長は 13 文字です。文字列が長い場合は、10 文字に切り詰められ、その後に省略記号が付けられます。それ以外の場合は、元の文字列が返されます。
Truncate 関数の作成
より再利用可能なソリューションとして、カスタム truncate() 関数を作成できます。
function truncate($string, $length, $dots = "...") { return (strlen($string) > $length) ? substr($string, 0, $length - strlen($dots)) . $dots : $string; }
この関数は、元の文字列、必要な長さ、およびオプションの省略記号文字列を次のように受け取ります。パラメータ。
単語の区切りを避ける
単語の途中で文字列が切り捨てられるのを避けたい場合は、PHP の wordwrap() 関数を使用できます。
function truncate($string, $length=100, $append="…") { //... (omitting other code from previous code snippet) $string = explode("\n", $string, 2); $string = $string[0] . $append; //... (continuing code from previous code snippet) }
このコードは、切り詰められた文字列を最も近い文字列にラップすることで、単語の途中で終了しないようにします。切り詰められる前の単語の境界。
以上がPHP で文字列を効率的に切り詰めるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。