【问题标题】:Printing contents of multidimensional array in PHP [duplicate]在PHP中打印多维数组的内容[重复]
【发布时间】:2013-02-12 10:31:17
【问题描述】:

我正在从数据库中获取复杂的数组,我需要在每次迭代(循环)中单独记录如下。

subscribed_store -> Name

subscribed_companyLogo -> logo image

subscribed_merchant -> Company Name

我们如何简化以下操作。

/********************** First Iteration *******************/
Array
(
    [subscribed_store] => Array
        (
            [0] => stdClass Object
                (
                    [id] => 55
                    [name] => test

                )

        )

    [subscribed_companyLogo] => Array
        (
            [0] => http://test.com/images/logo.png
        )

    [subscribed_merchant] => Array
        (
            [0] => stdClass Object
                (
                    [id] => 9
                    [company_name] => Google
                    [company_url] => http://www.google.com
                    [first_name] => David
                )

        )

)

非常感谢:)

【问题讨论】:

    标签: php mysql arrays multidimensional-array


    【解决方案1】:

    如果$array 持有上述数组,则尝试

    echo $array["subscribed_store"][0]->name;
    
    echo $array["subscribed_companyLogo"][0];
    
    echo $array["subscribed_merchant"][0]->company_name;
    

    如果您想要动态方式,请参见下文

    foreach($array as $key=>$val)
    {
        foreach($val as $subkey=>$subval)
        {
            echo $subval->id;
        }
    }
    

    此代码将在全局范围内工作,并将回显 id。但是您需要回显不同的元素,它们是不同的键。所以使用以下内容

    foreach($array["subscribed_store"] as $key=>$val)
    {
        echo $val->name;
    }
    
    
    
    foreach($array["subscribed_companyLogo"] as $key=>$val)
    {
        echo $val;
    }
    
    
    
    foreach($array["subscribed_merchant"] as $key=>$val)
    {
        echo $val->company_name;
    }
    

    【讨论】:

    • 太棒了!但它只打印一行,我希望它循环播放。
    • 好的,然后检查我编辑的答案。我正在编辑它。
    • @Bheem 哪个部分是动态的? [0] - 这部分?
    【解决方案2】:

    假设 $array 是问题中的数组,

     <table>
    
    <tr>
    <td> Store </td>
    <td> Company Logo </td>
    <td> Company Name </td>
    </tr>
    
    <?php
    
    foreach($array as $key => $row)
    {
     ?>
    <tr>
    <td> <?php echo $row['subscribed_store'][0]->name;?> </td>
    <td> <?php echo $row['subscribed_companyLogo'][0];?> </td>
    <td> <?php echo $row['subscribed_merchant'][0]->company_name;?> </td>
    </tr>
    <?php
    
    }
    
    
    ?>
    </table>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多