ホームページ  >  記事  >  バックエンド開発  >  PHP配列に値がない場合の対処方法

PHP配列に値がない場合の対処方法

WBOY
WBOYオリジナル
2023-05-07 17:27:07541ブラウズ

PHP では、配列は開発者が数値、文字列、その他の種類のデータなどのデータのコレクションを保存および操作できるようにする非常に便利なデータ型です。配列内の特定の値を見つける必要がある場合は、PHP の in_array() 関数を使用できます。しかし、配列に指定された値が含まれていない場合はどうすればよいでしょうか?

この記事では、PHP 配列に値が含まれていない場合の状況について説明し、解決策を提供します。

方法 1: 手動チェック

まず、最も簡単な方法は、配列に指定された値が含まれているかどうかを手動で確認することです。これは、単純なループと if ステートメントで実現できます。 foreach ループを使用して配列全体を反復処理し、ループ内で if ステートメントを使用して各値がターゲット値と同じかどうかを確認できます。値が見つからない場合は、対応するプロンプトを出力するか、コードの実行を続行できます。

以下はサンプル コードです:

$my_array = array('apple', 'banana', 'orange', 'pear');
$value_to_find = 'grape';

$found = false;
foreach ($my_array as $value) {
    if ($value == $value_to_find) {
        $found = true;
        break;
    }
}

if ($found) {
    echo 'Found the value!';
} else {
    echo 'Value not found.';
}

この例では、最初にいくつかの果物の名前を含む配列を定義します。次に、見つけたい値を「ブドウ」として定義します。次に、foreach ループを使用して配列全体を反復処理し、ループ内で if ステートメントを使用して、各値がターゲット値 (つまり、「grape」) と同じかどうかを確認します。値が見つかった場合、$found 変数は true に設定され、break ステートメントを使用してトラバーサルが停止されます。最後に、変数 $found の値が true の場合は「値が見つかりました!」を出力し、それ以外の場合は「値が見つかりません。」を出力します。

方法 2: array_search 関数を使用する

PHP では、array_search() 関数を使用して、配列内の特定の値の位置を見つけることができます。関数は値を見つけると、値のキーを返します。値が見つからない場合は false を返します。したがって、array_search() 関数を使用して、指定された値が配列に含まれているかどうかを確認できます。

次は、array_search() 関数によって実装されたサンプル コードです。

$my_array = array('apple', 'banana', 'orange', 'pear');
$value_to_find = 'grape';

$key = array_search($value_to_find, $my_array);

if ($key !== false) {
    echo 'Found the value!';
} else {
    echo 'Value not found.';
}

前のサンプル コードと同様に、最初に配列と検索する値を定義します。次に、array_search() 関数を使用して値の場所を見つけます。戻り値が false に等しくない場合、その値は配列内に存在し、「値が見つかりました!」が出力されます。それ以外の場合は、「値が見つかりません。」が出力されます。

方法 3: in_array 関数を使用する

この問題を解決するために使用できる別の組み込み関数は、in_array() です。 array_search() 関数と同様に、in_array() 関数は、配列に特定の値が含まれているかどうかを確認するために使用されます。関数は値を見つけると true を返します。値が見つからない場合は false を返します。したがって、in_array() 関数を使用して、配列に指定された値が含まれているかどうかを確認できます。

以下は、in_array() 関数によって実装されたサンプル コードです。

$my_array = array('apple', 'banana', 'orange', 'pear');
$value_to_find = 'grape';

if (in_array($value_to_find, $my_array)) {
    echo 'Found the value!';
} else {
    echo 'Value not found.';
}

前のコード サンプルと比較して、このサンプル コードはより簡潔になっています。ここでも、配列と検索する値を定義します。次に、in_array() 関数を使用して、値が配列内に存在するかどうかを確認します。関数が true を返した場合、値は配列内にあり、「値が見つかりました!」が出力されます。それ以外の場合は、「値が見つかりません。」が出力されます。

方法 4: 三項演算子を使用する

もう 1 つの方法は、PHP で三項演算子を使用して、配列に指定された値が含まれているかどうかを確認することです。

以下はサンプル コードです:

$my_array = array('apple', 'banana', 'orange', 'pear');
$value_to_find = 'grape';

echo in_array($value_to_find, $my_array) ? 'Found the value!' : 'Value not found.';

前の in_array() メソッドと比較して、このメソッドはより簡潔です。基本的に、三項演算子を使用して、in_array() 関数の結果に基づいて対応するメッセージを出力します。

方法 5: array_intersect 関数を使用する

最後の方法は、array_intersect() 関数を使用して、配列に指定された値が含まれているかどうかを確認することです。この関数は、2 つ以上の配列の交差を計算するために使用されます。交差部分が空でない場合、探している値は配列内に存在します。

以下はサンプル コードです:

$my_array = array('apple', 'banana', 'orange', 'pear');
$value_to_find = 'grape';

$intersection = array_intersect($my_array, array($value_to_find));

if (!empty($intersection)) {
    echo 'Found the value!';
} else {
    echo 'Value not found.';
}

この例では、array_intersect() 関数を使用して配列内の交差を計算します。具体的には、2 つのパラメーターを使用します。最初のパラメーターは検索する配列で、2 番目のパラメーターは検索する値を含む配列です。交差が存在する場合、変数 $intersection が書き込まれます。最後に、!empty() 関数を使用して、変数が空でないかどうかを確認します。空でない場合は、配列に検索対象の値が含まれていることを意味し、「値が見つかりました!」と出力されます。それ以外の場合は、「値が見つかりません。」が出力されます。

概要

PHP では、配列に指定された値が含まれているかどうかを確認する方法がたくさんあります。この記事で紹介した方法は次のとおりです。

  1. 手動チェック
  2. array_search 関数の使用
  3. in_array 関数の使用
  4. 三項演算記号
  5. array_intersect 関数を使用する

ニーズに応じて最適な方法を選択できます。この記事がお役に立てば幸いです!

以上がPHP配列に値がない場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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