実装手順: 1. 構文 "$variable name=["key name"=>"key value"];"; を使用して、指定されたキーと値のペアのみを含む配列を定義します 2. array_intersect_assoc を使用します() この関数は、キーと値のペアの配列を元の配列と比較します。構文「array_intersect_assoc (元の配列、キーと値のペアの配列)」は、同じ要素を含む交差配列を返します。空の配列。構文「intersect Array ===[]」が空の場合、配列にはキーと値のペアが指定されていません。
このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター
PHP では、array_intersect_assoc( ) 関数 配列に指定されたキーと値のペアがあるかどうかを確認します。
実装手順:
ステップ 1: 指定されたキーと値のペアのみを含む配列を定義する
$变量名=["键名"=>"键值"];
ステップ 2: array_intersect_assoc() 関数を使用して、キーと値の配列を元の配列と比較します。
array_intersect_assoc() 関数は、2 つ (またはそれ以上) の配列を比較するために使用されます。キー名とキー値、および交差 (同じ要素を含む交差配列) を返します。
array_intersect_assoc(原数组,键值对数组)
ステップ 3: 交差配列が空の配列かどうかを判断する
交集数组===[]
空の場合は、指定されたキーと値がありません。配列内のペア
空でない場合は、指定されたキーと値のペアが配列内にあります
実装コード:
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$s){ $assoc=array_intersect_assoc($arr,$s); // 检查数组是否为空 if($assoc===[]) { echo "数组中没有指定键值对"; //数组为空 } else{ echo "数组中有指定键值对"; //数组不为空 } } $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); echo '原数组:'; var_dump($arr); $s=["b"=>"green"]; echo '指定键值对:'; var_dump($s); f($arr,$s); ?>
説明:
array_intersect_assoc() 関数 -- 配列のキー名とキー値を比較します。
この関数は、2 つ (またはそれ以上) の配列のキーと値を比較し、比較された配列 (array1) とその他のパラメーター配列 (array2 または array3 など) 内のすべてのキーの合計を含む交差配列を返します。 ) キーの値。
array_intersect_assoc(array1,array2,array3...)
パラメータ | 説明 |
---|---|
array1 | 必須。他の配列と比較する最初の配列。 |
array2 | 必須。最初の配列と比較する配列。 |
array3、... | オプション。最初の配列と比較する追加の配列。 |
戻り値: 比較対象のすべての配列 (array1) とその他のパラメーター配列 (array2 または array3 など) を含む交差配列を返します。 ) キー名とキー値に。
拡張知識: 空の配列を判断するための他の 2 つの方法
方法 1: count( ) を使用するまたは sizeof() 関数
長さ 0 の配列は「空の配列」と呼ばれます。空の配列は、0 個の要素のみを含む実際のオブジェクトです。
したがって、count() 関数を使用して配列の長さを計算し、長さが 0 であるかどうかを判断できます。0 の場合は空の配列であり、それ以外の場合は空ではありません。配列。
count($arr,$m)
$m: はオプションのパラメータであり、省略できます。
$m パラメータが省略されている場合、または COUNT_NORMAL または 0 に設定されている場合、count() 関数は多次元配列を検出しません。 $m が COUNT_RECURSIVE または 1 に設定されている場合、count() 関数は配列内の要素数を再帰的に計算します。これは、多次元配列内の要素数を計算する場合に特に便利です。
<?php header("content-type:text/html;charset=utf-8"); // 声明一个空数组 $empty_array = array(); // 检查数组是否为空 if(count($empty_array) == 0) echo "数组为空"; else echo "数组不为空"; ?>
sizeof() 関数は count() 関数のエイリアスです。つまり、sizeof の関数と使用法です。 () 関数は、 count() 関数とまったく同じです。
方法 2: empty() 関数を使用する
empty() 関数は、変数が空かどうかを確認するために使用されます。 empty() 変数が空であるとみなされるかどうかを判断します。変数が存在しない場合、またはその値が FALSE に等しい場合、その変数は存在しないとみなされます。 empty() は、変数が存在しない場合に警告を生成しません。
注: 初期化されていない変数、値が 0 または false の変数、空の文字列 "" または null、空の配列、または属性のないオブジェクトは、empty==true と判断されます
変数が存在し、空でもゼロでもない値の場合は FALSE を返し、それ以外の場合は TRUE を返します。
<?php header("content-type:text/html;charset=utf-8"); // 声明一个空数组 $array = []; // 检查数组是否为空 if(empty($array)) echo "数组为空"; else echo "数组不为空"; ?>
PHP ビデオ チュートリアル 」
以上がPHPで配列にキーと値のペアがあるかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。