ホームページ >バックエンド開発 >PHPの問題 >PHP配列に要素が存在するかどうかを確認する方法

PHP配列に要素が存在するかどうかを確認する方法

PHPz
PHPzオリジナル
2023-04-26 10:32:03983ブラウズ

PHP は、開発者が実行時にデータ構造を動的に作成および変更できるようにする動的言語です。その中でも、最もよく使用されるデータ構造の 1 つは配列です。

配列は、一連のデータを格納するために使用されるデータ型です。 PHP では、さまざまな方法で配列を作成し、アクセスできます。実際のプロジェクトでは、通常、プログラムの正確性を確認するために配列内の要素を判断する必要があります。この記事では、PHP で配列内の要素が存在するかどうかを確認する方法を紹介します。

  1. in_array() 関数の使用

in_array() 関数は、配列内に値が存在するかどうかを確認するために使用される PHP の関数です。この関数の構文は次のとおりです。

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

このうち、$needle は取得する値を表します。が見つかり、$haystack はターゲット配列を表し、$strict は厳密モードが有効かどうかを示します。

次は、この関数の使用例です:

$fruits = array('apple', 'banana', 'orange');
if( in_array('apple', $fruits) ){
    echo '苹果存在!';
}else{
    echo '苹果不存在..';
}

上記のコードでは、$fruits という名前の配列が最初に定義され、次に in_array() 関数を使用して、文字列が入っています。apple'。存在する場合は「Apple は存在します!」、存在しない場合は「Apple は存在しません..」と出力します。

in_array() 関数はデフォルトでリラックス モードを使用することに注意してください (つまり、3 番目のパラメータは FALSE です)。ストリクト モードをオンにしたい場合は、これを TRUE に設定する必要があります。

  1. array_key_exists() 関数を使用する

array_key_exists() 関数は、指定されたキーが配列内に存在するかどうかを判断するために使用されます。構文は次のとおりです。

bool array_key_exists(mixed $key, array $array )

このうち、$key は検索するキーを表し、$array はターゲット配列を表します。

次は、この関数の使用例です。

$students = array('Tom' => 18, 'Jerry' => 20, 'Mickey' => 21);
if( array_key_exists('Jerry', $students) ){
   echo 'Jerry存在!';
}else{
   echo 'Jerry不存在..';
}

上記のコードでは、最初に $students という名前の配列が定義され、いくつかのキーと値のペアが格納されます。次に、array_key_exists() 関数を使用して、キー名「Jerry」の要素が含まれているかどうかを確認します。存在する場合は「Jerry が存在します!」を出力し、存在しない場合は「Jerry が存在しません..」を出力します。

array_key_exists() 関数は、指定されたキー名が配列内に存在するかどうかを判断するためにのみ使用でき、キー値が存在するかどうかを判断することはできないことに注意してください。

  1. isset() 関数を使用する

isset() 関数は、変数が定義されており、NULL でないかどうかを判断するために使用されます。配列では、 isset() 関数を使用して、指定された要素が存在するかどうかを確認できます。構文は次のとおりです。

bool isset(mixed $var [,mixed $... ] )

このうち、$var には変数名または配列要素を指定できます。配列要素を検出する場合は、次の形式を使用する必要があります:

isset( $array['key'] );

次に isset() 関数の使用例を示します:

$fruits = array('apple', 'banana', 'orange');
if( isset($fruits[0]) ){
    echo '下标为0的元素存在!';
}else{
    echo '下标为0的元素不存在..';
}

上記のコードでは、isset を使用します。 () $fruits にインデックス 0 の要素があるかどうかを配列を検出する関数。存在する場合は「添字 0 の要素は存在します!」、存在しない場合は「添字 0 の要素は存在しません。」と出力します。

isset() 関数は、変数または配列要素が定義されており、NULL ではないかどうかを判断するためにのみ使用できることに注意してください。配列要素の値が空かどうかを判断する必要がある場合は、empty() 関数を使用する必要があります。

  1. array_search() 関数の使用

array_search() 関数は、配列内の指定された値を検索し、対応するキー名を返すために使用されます。構文は次のとおりです。

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

このうち、$needle は検索する値を表し、 $haystack はターゲット配列を表し、$strict はストリクト モードを有効にするかどうかを示します。

次は、この関数の使用例です:

$fruits = array('apple', 'banana', 'orange');
$key = array_search('apple', $fruits);
if($key !== FALSE){
    echo '苹果对应的键名是:'.$key;
}else{
    echo '苹果不存在..';
}

上記のコードでは、$fruits という名前の配列が最初に定義され、次に array_search() 関数を使用して、$fruits が定義されているかどうかを確認します。文字列「apple」が含まれています。存在する場合は、配列内の要素に対応するキー名を返し、存在しない場合は FALSE を返します。

array_search() 関数は値を検索することしかできず、キーが存在するかどうかを判断できないことに注意してください。

概要

この記事では、PHP でよく使用される 4 つの配列要素の判定方法、in_array()、array_key_exists()、isset()、array_search() を紹介します。さまざまな方法には独自の長所と短所があるため、開発者は実際の状況に応じて選択する必要があります。同時に、これらの関数を使用するときは、パラメーターの種類と厳密モードがオンになっているかどうかにも特別な注意を払う必要があります。

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

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