ホームページ >バックエンド開発 >PHPチュートリアル >Substr 関数で単語が半分にならないようにするにはどうすればよいですか?

Substr 関数で単語が半分にならないようにするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-08 17:18:02231ブラウズ

How to Ensure Substr Function Doesn't Cut Words in Half?

PHP の substr 関数を使用した単語の保存

substr 関数を使用すると、結果の文字列が途中で突然終了する状況がよく発生します。一言で。切り詰められた文字列が単語境界で終わるようにしたい場合は、次の解決策の実装を検討してください:

解決策:

目的の動作を実現するには、次のソリューションを活用できます。 strpos 関数は、より大きな文字列内で指定された文字列が最初に出現する位置を検索します。この場合、単語境界のマーカーとしてスペース文字 (" ") を利用します。

コード:

substr($body, 0, strpos($body, ' ', 260))

説明:

このコード:

  1. 入力を渡します
  2. 結果の文字列の最大長を 260 文字として指定します (その長さに制限することを想定しています)。 .
  3. strpos を使用して、指定された長さの範囲 (260 文字) 内の最初の空白文字を検索します。
  4. 部分文字列を返します文字列の先頭から最初のスペース文字の位置まで、文字列が単語の区切りで終わるようにします。

使用法:

既存の substr 呼び出し:

echo substr("$body",0,260);

を変更したものcode:

echo substr($body, 0, strpos($body, ' ', 260));

このソリューションを実装すると、substr が単語の境界を尊重する文字列を生成し、単語の途中での突然の切り捨てを防ぐことができます。

以上がSubstr 関数で単語が半分にならないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。