ホームページ >バックエンド開発 >PHPの問題 >PHP は配列が数値配列かどうかを判断します

PHP は配列が数値配列かどうかを判断します

(*-*)浩
(*-*)浩オリジナル
2019-09-21 10:25:044579ブラウズ

PHP は配列が数値配列かどうかを判断します

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 サイトの他の関連記事を参照してください。

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