【问题标题】:Trouble Looping through multidimensional array循环遍历多维数组的问题
【发布时间】:2012-11-21 15:26:10
【问题描述】:

我在尝试使用 PHP 循环遍历多维数组时遇到问题。当我使用print_r() 函数时,这是我的输出:

Array ( [0] => Array ( [fname] => [sname] => [address] => [address2] => [city] => [state] => Select State [zip] => [county] => United States [phone] => [fax] => [email] => [use_email] => on )

我尝试了几种技术,但似乎都没有奏效。任何帮助表示赞赏!

【问题讨论】:

    标签: php arrays loops multidimensional-array


    【解决方案1】:

    最简单的就是使用 foreach 语句:

    foreach($yourarray as $array_element) {
      $address = $array_element['address'];
      $fname   = $array_element['fname'];
      ...
    }
    

    【讨论】:

      【解决方案2】:

      你可以这样做

      foreach($array as  $value) {
         foreach($value as  $val) {
          echo $val;
        }
      }
      

      【讨论】:

        【解决方案3】:

        你的代码是:

        $set = array( 0 => array ( 'fname' => '',
                                     'sname' => '',
                                     'address' => '',
                                     'address2' => '',
                                     'city' => '',
                                     'state' => 'Select State',
                                     'zip' => '',
                                     'county' => 'United States',
                                     'phone' => '',
                                     'fax' => '',
                                     'email' => '',
                                     'use_email' => 'on')
        );
        
        $subArray = $set[0]; // <-- key line
        foreach($subArray as $k => $v) {
            printf("key: %s, value: %s\n", $k, $v);
        }
        

        输出:

        key: fname, value: 
        key: sname, value: 
        key: address, value: 
        key: address2, value: 
        key: city, value: 
        key: state, value: Select State
        key: zip, value: 
        key: county, value: United States
        key: phone, value: 
        key: fax, value: 
        key: email, value: 
        key: use_email, value: on
        

        您需要正确访问索引数组。

        【讨论】:

          【解决方案4】:

          看起来在您要循环的内容之前还有一个维度。试试这个。

          foreach($array[0] as $key => $value) {
              echo $key, ': ', $value;
          }
          

          【讨论】:

            猜你喜欢
            • 2013-04-01
            • 2012-04-21
            • 2011-01-02
            • 2014-05-01
            相关资源
            最近更新 更多