インターネットの発展に伴い、文字列処理はプログラミングにおける一般的なタスクになりました。文字列のマッチングの問題を解決するために、PHP8 では新しい関数 str_contains() が導入されました。この関数は、文字列に指定された文字列が含まれているかどうかをすばやく返すことができます。この関数は、文字列のマッチングを頻繁に実行する必要がある開発者にとって非常に便利なツールです。
1. str_contains() 関数の基本的な使用法
str_contains() 関数は、文字列に指定された文字列が含まれているかどうかを判断するために使用されます。その構文は次のとおりです:
bool str_contains( string $haystack, string $needle)
このうち、$haystack は元の文字列を表し、$needle は検出される文字列を表します。元の文字列に指定された文字列が含まれている場合、関数は true を返し、それ以外の場合は false を返します。
ここにいくつかの例があります:
例 1:
$str1 = "Hello World!";
if (str_contains($str1, "World")) {
echo "The string contains the word 'World'";
} else {
echo "The string does not contain the word 'World'";
}
この例では、$haystack は「Hello World!」、$needle は「World」です。 $haystack には $needle が含まれているため、関数は true を返し、「文字列には単語 'World' が含まれています」という文字列を出力します。
例 2:
$str2 = "Hello World!";
if (str_contains($str2, "Universe")) {
echo "The string contains the word 'Universe'";
} else {
echo "The string does not contain the word 'Universe'";
}
この例では、$haystack は「Hello World!」、$needle は「Universe」です。 $haystack には $needle が含まれていないため、関数は false を返し、「文字列には単語 'Universe' が含まれていません」という文字列を出力します。
2. str_contains() 関数の利点
以前の PHP には、文字列内の部分文字列を検索してその位置を返すために使用される関数 strstr() および strpos() がすでにありました。ただし、str_contains() 関数には次の利点があります。
if (str_contains($str, "needle")) {
// Code to execute if the string contains "needle"
}
比較するには、strstr() または strpos( ) を使用します。関数の場合、一致が成功したかどうかを判断する前に、戻り値に対して if 条件判定を実行する必要があります。
3. str_contains() 関数を使用するようにプロジェクトを移行する方法
プロジェクトで str_contains() 関数を使用する場合は、PHP のバージョンが8.0以降にアップグレードしました。アップグレードが完了したら、プロジェクト内の strstr() または strpos() 関数が使用される場所を変更する必要があります。
まず、プロジェクトの実際の状況に基づいて、更新する必要がある場所を選択する必要があります。大量のコードで関数を使用する必要がある場合は、検索および置換関数を使用して、古い関数呼び出しを新しい関数呼び出しに変更できます。
たとえば、$strstr() 関数を呼び出します。
if (strstr($haystack, $needle)) {
// ...
}
Modify $str_contains() 関数を呼び出します。
if (str_contains($haystack, $needle)) {
// ...
}
このようにして、プロジェクトで str_contains の使用を開始できます。 () 関数。
4. 結論
str_contains() 関数は、PHP8 で導入された文字列マッチング関数の 1 つで、パフォーマンスが向上し、より簡潔で明確に使用できます。 strstr() 関数または strpos() 関数をまだ使用している場合は、必要に応じて str_contains() 関数に積極的に移行することをお勧めします。
以上がPHP8 の関数 str_contains() を使用して、高速な文字列一致を実現します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。