PHPでインデックス付き配列かどうかを判断する方法

WBOY
リリース: 2016-07-25 09:12:24
オリジナル
1922 人が閲覧しました

例として、php 配列がインデックス配列であるかどうかを検出します。

  1. function is_assoc($arr){
  2. return array_keys($arr) !== range(0, count($arr) - 1)
  3. // array_values($arr) ! == $arr
  4. }
  5. function is_assoc2($array) {
  6. return (bool)count(array_filter(array_keys($array), 'is_string'))
  7. }
  8. $array = array(0=>"1") ,1=>"3");
  9. var_dump($array)?'インデックス配列':'インデックス配列ではありません';
  10. echo "
    "; is_assoc2 ($array)?'インデックス配列':'インデックス配列ではありません';
  11. $array = array("0"=>"1","1"= > "3");
  12. echo is_assoc($array)?'インデックス配列ではありません';
  13. echo is_assoc2($)配列)? 'インデックス配列': 'インデックス配列ではありません';
  14. $array("name"=>"1","age"=>" 3");
  15. var_dump($array);
  16. echo is_assoc($array)?'インデックス配列':'インデックス配列ではありません';
  17. echo "
    ";
  18. echo is_assoc2($array)? 'インデックス配列': 'インデックス付き配列ではありません';
  19. コードをコピー
  20. 出力:
配列 (サイズ=2) 0 => 文字列 '1' (長さ=1) 1 => 文字列 '3' (長さ=1) インデックス付き配列ではありません インデックス付き配列ではありません 配列 (サイズ=2) 0 => 文字列 '1' (長さ=1) 1 => 文字列 '3' (長さ=1) インデックス付き配列ではありません インデックス付き配列ではありません 配列 (サイズ=2) '名前' => 文字列 '1' (長さ=1) '年齢' => 文字列 '3' (長さ=1) インデックス配列 インデックス配列

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート