【问题标题】:PHP Multidimensional associative arraysPHP 多维关联数组
【发布时间】:2017-08-15 06:45:02
【问题描述】:

我只是想知道我拥有的这段代码是否是一个多维关联数组。我只是问,因为在对多维数组进行研究之后,我找不到两者之间的区别,因为它们看起来一样。这段代码是关联数组还是标准的多维数组?

$win = array('Name'=> 
                        array('Jane Doe ', 'Nash Patel ', 'Joe Public '), 
             'Date'=>
                        array('7 October 2015 ', '14 October 2014 ', '12 October 2016 '));

foreach($win as $element => $namedate) {
    echo '<strong>' . $element . '</strong><br>';
    foreach($namedate as $both) {
       echo $both . '<br/>';
    }
}

【问题讨论】:

    标签: php arrays multidimensional-array


    【解决方案1】:

    你有一个多维数组。

    第一级是关联的,因为键是NameDate

    第二级子数组被索引(非关联)。这意味着Jane Doe 的索引是0Nash Patel1,而Joe Public2

    尽管您可以根据需要,但在声明索引元素时不需要编写键——PHP 将免除您这项繁琐的工作。

    例子:

    $one_dim=['Name'=>'Jane Doe ']; // 1-dimensional associative array with one element
    
    $one_dim=['Jane Doe '];         // 1-dimensional indexed array with one element
    
    $mult_dim=[                     // multi-dimensional associative array with indexed subarrays
        'Name'=>[                   // associative
            0=>'Jane Doe ',         // indexed
            1=>'Nash Patel ',       // indexed
            2=>'Joe Public '        // indexed
        ],
        'Date'=>[                   // associative
            0=>'7 October 2015 ',   // indexed
            1=>'14 October 2014 ',  // indexed
            2=>'12 October 2016 '   // indexed
        ]
    ];
    

    【讨论】:

    • 我怎样才能让整个数组关联起来而不使其被索引?
    • 您可以手动声明每个子数组的键。当您声明键时,php 不会为您应用自动递增的数字键。你有什么考虑?使用Name 值作为键和Date 值作为值对您有帮助吗?看看this demo link
    猜你喜欢
    • 2013-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 2014-08-12
    • 2013-07-10
    相关资源
    最近更新 更多