PHP は配列が数値配列であると判断します
具体的なアイデア: 配列のすべてのキーを取得します: "array_keys()"
すべてのキーを走査して、各キーが 0 から始まり、順番に 1 ずつ増加するかどうかを確認します。
具体的な方法は次のとおりです。 (推奨学習: PHP プログラミング入門から習熟まで )
function _checkAssocArray($arr) { $index = 0; foreach (array_keys($arr) as $key) { if ($index++ != $key) return false; } return true; }
ロジックは非常に複雑です。単純な連想配列 キーはすべて 0、1、2、3... の順序で増加するわけではありません。増加する場合は、数値配列との違いはなく、同じように扱うだけです。
function is_assoc($arr) { return array_keys($arr) !== range(0, count($arr) - 1); }
テスト
$arr = array(1, 2, 3, 4, 5, 6, 7); print is_assoc($arr); // 输出false $arr = array("foo" => "bar", "bar" => "foo"); print is_assoc($arr); // 输出true $arr = array("foo" => "bar", 3, 4, 5); print is_assoc($arr); // 输出true
以上がPHP は配列が数値配列かどうかを判断しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。