PHP では、文字列が配列内に格納されている要素を含んでいるかどうかを確認する必要がよくあります。このシナリオは、ユーザーが送信したデータを確立された値のリストと照合して検証するときに発生します。
このチェックを実行するために in_array() を使用すると、厳密な同等性が評価されるため、予期しない結果が生じる可能性があります。別のアプローチでは、配列要素を反復処理し、strstr()、stristr()、または strpos() を使用して文字列と比較します。
次の所有 URL の配列を考えてみましょう。 :
$owned_urls = array('website1.com', 'website2.com', 'website3.com');
ユーザー入力文字列にこれらの URL のいずれかが含まれているかどうかを確認するには、次のコードを実装します。
<code class="php">$string = 'my domain name is website3.com'; foreach ($owned_urls as $url) { if (strpos($string, $url) !== FALSE) { echo "Match found"; return true; } } echo "Not found!"; return false;</code>
Stristr()ortripos()` は大文字と小文字を区別して使用する必要があります。 - 区別しない比較。
以上がPHPで文字列に配列の要素が含まれているかどうかを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。