Implode和print_r

时间:2012-01-25 22:00:11

标签: php arrays

我想以print_r打印方式打印数组,而不将标签作为字符串

例如:

如果我有一个数组:

array (
  0 => 'doh',
  1 => 'ray',
  2 => 'me',
  3 =>
  array (
    0 => 'fah',
    1 => 'soh',
    2 => 'lah',
    3 => 'te',
    4 => 'do',
  ),
)

我想用“doh ray me fah soh lah te do”打印一个字符串(所有数组元素)。

我尝试了implode(),但它只返回“doh ray me”

有什么建议吗?

4 个答案:

答案 0 :(得分:3)

$results = array();

array_walk_recursive(
    $your_array,
    function ($value, $key) use (&$results) {
        $results[] = $value;
    });

echo implode(' ', $results);

答案 1 :(得分:2)

function custom_implode($arr, $str) {
    foreach($arr as $val) {
        if(is_array($val) {
            $str .= ' '.custom_implode($val, $str);
        }
        else {
            $str .= ' '.$val;
        }
    }
    return $str;
}

答案 2 :(得分:1)

非常简单......只需使用

即可
<pre> 
 <?php print_r($an_array); ?> 
</pre>
砰的一声,你已经完成了。

答案 3 :(得分:0)

尝试类似的地方,你有更多的控制权

foreach ($arrayname as $str)
    echo $str." ";