2 つの判定方法: 1. count() 関数を使用して、第 2 パラメータを省略した場合と省略しない場合で取得した長さが同じかどうかを比較します。構文 "count($arr)" !=count( $arr,1)" の場合、戻り値が true の場合は 2 次元配列であり、その逆も同様です。 2. foreach ステートメントを使用して配列をループし、ループ本体で is_array() を使用して要素の値が配列型であるかどうかを判断します。どちらの要素も配列型でない場合、その要素は 2 次元配列ではありません。 1 つは、2 次元配列であることです。
このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php は、配列は 2 次元配列の 2 つの方法
方法 1: count() 関数を使用して決定します
count() 関数配列内の数値を計算します。オブジェクト内のユニットの数または属性の数
count ( mixed $var [, int $mode ] )
$mode: はオプションのパラメーターであり、省略できます。
$mode パラメータが省略されている場合、または COUNT_NORMAL または 0 に設定されている場合、count() 関数は多次元配列を検出しません。 $mode が COUNT_RECURSIVE または 1 に設定されている場合、count() 関数は配列内の要素数を再帰的にカウントします。これは、多次元配列内の要素数を計算する場合に特に便利です。
$mode パラメータを省略した場合、count は多次元配列を検出せず、1 次元の要素数のみを取得します。
count($arr) != count($arr, 1)
等しくない場合 (戻り値が true)、それは 2 次元配列です。
等しくない場合は、2 次元配列になります。が等しい (戻り値は false) )、それは 2 次元配列ではありません
<?php header('content-type:text/html;charset=utf-8'); $arr = array(1,array(2,4),6); var_dump($arr); if (count($arr) != count($arr, 1)) { echo '是二维数组'; } else { echo '不是二维数组'; } ?>
方法 2: foreach ステートメント is_array() 関数
foreach ステートメントを使用して配列をループします
ループ本体では、is_array を使用します() 要素の値が配列型であるかどうかを判断する関数。そうでない場合は 2 次元配列ではありません。ある場合は 2 次元配列です。
<?php header("content-type:text/html;charset=utf-8"); $arr = array(1,2,3,4,5); var_dump($arr); $con=0; foreach($arr as $v){ if(is_array($v)){ $con=1; break; }else{ $con=0; } } if($con==1){ echo "是二维数组"; }else{ echo "不是二维数组"; } ?>
PHP ビデオ チュートリアル 」
以上がPHP で配列が 2 次元配列かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。