ホームページ >バックエンド開発 >PHPの問題 >PHP配列に文字列が含まれているかどうかを確認する方法

PHP配列に文字列が含まれているかどうかを確認する方法

PHPz
PHPzオリジナル
2023-04-18 10:18:24619ブラウズ

PHP は、Web 開発で一般的に使用されるスクリプト言語です。 Web 開発では、データを保存および管理するために PHP で配列がよく使用されます。配列に特定の文字列が含まれているかどうかを判断する必要がある場合があります。この記事では、PHPで配列に指定した文字列が含まれているかどうかを判定する方法とサンプルコードと詳しい説明を詳しく紹介します。

PHP では、in_array 関数を使用して、配列に指定された文字列が含まれているかどうかを判断できます。 in_array 関数の構文は次のとおりです。

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

このうち、$needle は検索する必要がある値を表し、$haystack は検索する必要がある配列を表し、$strict はオプションのパラメーターです。 TRUE に設定すると、タイプもチェックされます。 in_array 関数はブール値を返し、配列に検索された値が含まれている場合は true を返し、それ以外の場合は false を返します。

まず、簡単な例を見てみましょう。配列に文字列「apple」が含まれているかどうかを確認します。

<?php
$fruits = array("apple", "banana", "cherry", "durian");
 
if (in_array("apple", $fruits)) {
    echo "包含字符串&#39;apple&#39;。";
} else {
    echo "不包含字符串&#39;apple&#39;。";
}
?>

コードの出力結果は次のとおりです: 文字列「apple」が含まれています。配列 $fruits に「apple」を定義したため、in_array 関数を使用すると true が返され、出力には文字列「apple」が含まれます。

それでは、複数の文字列が配列内にあるかどうかを確認する必要がある場合はどうすればよいでしょうか?ループを使用して 1 つずつ判断できます。

以下はコード例です:

<?php
$fruits = array("apple", "banana", "cherry", "durian");

$find_fruits = array("apple", "pear");

foreach ($find_fruits as $fruit) {
    if (in_array($fruit, $fruits)) {
        echo "包含字符串&#39;$fruit&#39;。";
    } else {
        echo "不包含字符串&#39;$fruit&#39;。";
    }
}
?>

出力結果は次のとおりです:

文字列「apple」が含まれます。文字列「pear」は含まれません。

上記のコードでは、2 つの配列を定義しています。$fruits にはいくつかの果物の名前が含まれており、$find_fruits には見つける必要がある果物の名前が含まれています。次に、foreach ループを使用して、検索する必要がある果物の名前を反復処理し、in_array 関数を使用してそれらが含まれているかどうかを判断しました。含まれている場合、出力には文字列「x」が含まれ、含まれていない場合、出力には文字列「x」が含まれません。

この例は非常に単純ですが、in_array 関数を使用して配列に複数の文字列が含まれているかどうかを判断する方法が簡単にわかります。

次のコードのように、カスタム配列で値を検索する必要がある場合があります。

<?php
$users = array(
        array(&#39;name&#39; => '张三', 'age' => 20),
        array('name' => '李四', 'age' => 22),
        array('name' => '王五', 'age' => 25),
    );
 
$find_name = '李四';
 
foreach($users as $data){
    if(in_array($find_name, $data, true)){
        echo "该数组包含$find_name";
    }
}
?>

上記のコードでは、$users という 2 次元配列を定義します。それぞれの部分配列には名前と年齢が含まれます。次に、$find_name が定義されます。これは、検索する必要がある値、つまり検索する必要がある名前です。 foreach ループを使用して配列 $users を反復処理し、次に in_array 関数を使用して $find_name を見つけます。 $find_name が配列 $users にある場合、「配列には $find_name が含まれています」と出力されます。それ以外の場合、アクションは実行されません。

in_array 関数は、文字列が配列内にあるかどうかを判断する場合に非常に便利です。これにより、配列に指定された文字列が含まれているかどうかをすばやく判断できます。同時に、ループを使用して、複数の文字列が配列内にあるかどうかを確認することもできます。これらの手法を使用すると、PHP で配列内のデータをより効率的に管理および検索できるようになります。

以上がPHP配列に文字列が含まれているかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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