如何回显print_r()数组输出

时间:2019-07-16 06:21:00

标签: php arrays

我有点问题如何回显print_r()输出数组。

Array ( 
    [one@gmail.com] => Array ( 
        [0] => 70,80 
        [1] => 90,100 
    ) 
    [two@gmail.com] => Array ( 
        [0] => 10 
    ) 
)
function array_combines($arr1,$arr2) { 
   $out = array(); 
   foreach($arr1 as $key1 => $value1)    { 
    $out[$value1][] = $arr2[$key1]; 
   } 
   return $out;
} 
print_r(array_combines($a,$b));

我希望回声:

key: one@gmail.com
value: 70,80 90,100

key: two@gmail.com
value: 10

2 个答案:

答案 0 :(得分:4)

如下图所示循环数组。关键是电子邮件,然后在值上使用implode()

foreach ($array as $key => $value) {
    echo "key: " , $key , PHP_EOL;
    echo "value: " , implode(' ',$value) , PHP_EOL , PHP_EOL;
}

输出:-

key: one@gmail.com
value: 70,80 90,100

key: two@gmail.com
value: 10

演示在:
https://3v4l.org/gXJcPhttps://3v4l.org/rN9LV

答案 1 :(得分:3)

首先使用array_walk()将阵列格式化为期望的图案,最后使用implode()</br>胶水使用PHP_EOL打印阵列。示例:

array_walk($arr, function (&$item, $key) { $item = "key: {$key}</br>value: " . implode(" ", $item); });

echo implode('</br></br>', $arr);

Demo