从 php 中的多维关联数组打印值

print values from multidimensional associative array in php

我有一个多维数组,其中包含来自数据库的值 table 但值是键值格式所以我尝试使用 foreach 循环打印但无法获得输出,那么如何使用 foreach 循环执行此操作 在 print_r() 得到这样的输出后。

echo '<pre>';
print_r($product_info);


Array
(
    [product] => Array
        (
            [0] => Array
                (
                    [data1] => "value1"  
                )
            [1] => Array
                (
                    [data2] => "value2"  
                )
        )
    [type] => 6
)

foreach ($product_info as $key => $val) {
    if (is_array($val)) {
         foreach ($val as $c => $d) {
            echo "" . $c . " is " . $d . ".";
        }
    }
}

您可以尝试:

array_shift($product_info)

然后在其上使用 foreach() 或简单地迭代:

$product_info['product']

这样做就可以了:

foreach ($product_info as $key => $val) {

    //look for specific key. And do action if needed.
    if($key=='product'){

        $all = 0;
        $all = COUNT($val); //Count lines

        //loop lines
        for ($x = 0; $x <= $all; $x++) {

            //check if line exist
            if(isset($val[$x])){

                //loop through lines and echo data
                foreach ($val[$x] as $c => $d) {

                    echo $c.' '.$d.'<br>';

                }
            }
        }       


    }

    if($key=='type'){       
        echo 'This is type: '.$val;
    }   

}

您应该根据需要对其进行编辑,但这就是您可以做到的!