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 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?