php构造vs php功能

时间:2013-03-30 11:01:32

标签: php

尝试使用php构造显示多维数组不起作用:

<?php
$_arr=array("Names"=>array("mola","dola","kola","hola"));

echo $_arr;
?>

但是,如果我们使用 print_r()函数而不是以特定格式显示整个数组呢?

4 个答案:

答案 0 :(得分:2)

尝试foreach声明

foreach($_arr as $key => $value)
{
   foreach($value as $v)   
      echo "$key  => $v<br>\n";
}

答案 1 :(得分:0)

首先,有一个括号不匹配,数组末尾缺少右括号。

echo $_arr;应该只返回“数组”。 print_r($_arr)“打印有关变量的人类可读信息”请参阅http://www.php.net/manual/en/function.print-r.php

你问为什么......因为这是这个功能的行为? ;)

答案 2 :(得分:0)

function print_array($array){
 if(!is_array($array)){
  return false;
 }
 foreach($array as $v){
    if(is_array($v)){
      print_array($v);
    }
    else{
      echo "$v <br>\n";
    }
 }
}

print_array(array("one", array("a", "b", "c")));

输出:

one
a
b
c 

答案 3 :(得分:-1)

您可以使用print_rvar_dump来打印数组。否则,在echo循环中使用foreach来迭代数组。如果您在2D数组上进行迭代,则第一个内部会有foreach个{{1}}。等等...