ホームページ >バックエンド開発 >PHPチュートリアル >文字列を切り詰めるときに単語の境界を維持するにはどうすればよいですか?

文字列を切り詰めるときに単語の境界を維持するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-24 06:32:02994ブラウズ

How to Maintain Word Boundaries When Truncating Strings?

文字列切り詰め時の単語境界の維持

前のクエリで、ユーザーは substr() を使用して文字列を 100 文字に切り詰めようとしました。関数。ただし、このメソッドは最初の 100 文字を取得するだけであり、処理中に単語が壊れる可能性があります。

問題の説明

目的は、文字列を最大 100 文字に切り詰めることです。単語がそのまま残ることを保証しながら、文字を削除します。例:

$big = "This is a sentence that has more than 100 characters in it, and I want to return a string of only full words that is no more than 100 characters!"

$small = truncate_string($big);

echo $small;

// OUTPUT: "This is a sentence that has more than 100 characters in it, and I want to return a string of only"

PHP ソリューション

次のコードは解決策を提供します:

<code class="php">function truncate_string($string)
{
    $pos = strpos($string, ' ', 200);
    return substr($string, 0, $pos);
}</code>

説明:

  • strpos() 関数は、最初の 200 文字以内の文字列内の次のスペース文字を検索します。これにより、最初の 100 文字を超えて切り捨てられることがなくなります。
  • substr() 関数は、文字列の先頭から指定された位置までの部分文字列を返します。これは、最初の 200 文字内の最初のスペースの位置です。文字。

以上が文字列を切り詰めるときに単語の境界を維持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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