dongtuojuan8998 2014-06-22 17:48
浏览 70
已采纳

在while循环中迭代关联数组

EDIT I have an associative array :

$formation_domains_info_array = array(
    'electrotechnique-electronique' => array(
        'title'     =>  'ÉLECTROTECHNIQUE - ÉLECTRONIQUE',
        'flechage'  =>  array(212, 213, 355),
    ),
    'informatique-infographie-cao-dao' => array(
        'title'     =>  'INFORMATIQUE - INFOGRAPHIE - CAO/DAO',
        'flechage'  =>  array(217, 218),
    ),
    'metiers-du-verre-horlogerie' => array(
        'title'     =>  'MÉTIERS DU VERRE - HORLOGERIE',
        'flechage'  =>  array(215, 224),
    )
);

I wanted to iterate through it this way :

while ($index < count($fdomains_array)) {
     echo $formation_domains_info_array[$index++] .'<br/>';
     $index++;
}

I am quite surprised to get "Undefined offset 0" as an error message. Is it not possible to iterate that way through associative array in PHP?

Thanks in advance for your explanations.

  • 写回答

1条回答 默认 最新

  • dongzhan7909 2014-06-22 18:02
    关注

    It is possible to iterate an associative array using while, but just not this way. You'll need to leverage the list and each methods as arguments to the while statement.

    while(list($key, $value) = each($formation_domains_info_array)):
        //do stuff here
    endwhile;
    

    But your best bet, would simply be a foreach loop.

    foreach($formation_domains_info_array as $idx => $arr):
        //do stuff here
    endforeach;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端