2015-11-07 121 views
0

如何打印此数组?打印多维数组

<?php 
    $datos = array(
     array('AZUAY', array('P', 'Q')) 
    ); 
    //print array 
    foreach ($datos as $dato1) { 
     foreach ($dato1 as $v2) { 
      echo $v2; 
      foreach ($v2 as $v3) 
       echo $v3; 
     } 
     echo "<br>"; 
    } 
?> 
+1

使用递归。 http://stackoverflow.com/questions/2648968/what-is-a-recursive-function-in-php –

回答

2

您可以使用printf()var_dump()作为一个简单的美化打印机:

print_r($datos); 
var_dump($datos); 

输出:

print_r()

Array ([0] => Array ([0] => AZUAY [1] => Array ([0] => P [1] => Q))) 

var_dump()

array(1) { [0]=> array(2) { [0]=> string(5) "AZUAY" [1]=> array(2) { [0]=> string(1) "P" [1]=> string(1) "Q" } } } 
0

像这样的东西应该工作:

$datos = array(
    array('AZUAY', array('P', 'Q')) 
); 

function printWeirdArray($array) 
{ 
    foreach($array as $i) 
    { 
     if(is_array($i)) 
     { 
      printWeirdArray($i); 
     } 
     else 
     { 
      print $i."-"; 
     } 
    } 
} 

printWeirdArray($datos); 

上面的代码输出:

AZUAY-P-Q-

祝你好运!