$vararray = array(
              "地支" => array("子", "丑", "寅", "卯"),
              "生肖" => array("鼠", "牛", "虎", "兔"),
              "数字" => array(1, 2, 3, 4)
            );
function out($val)
{
if(is_array($val))
array_walk($val,"out");
else 
echo "$val<br>";
}array_walk($vararray,"out");

解决方案 »

  1.   

    可以采用递归的方法:
    <?
    $vararray = array(
                  "地支" => array("子", "丑", "寅", "卯"),
                  "生肖" => array("鼠", "牛", "虎", "兔"),
                  "数字" => array(1, 2, 3, array(4,5,6,7,8))
                );function DG ($var,$name)
    {
      echo "<dl>";
      echo "<dt>遍历数组\"$name\"";
      while (list($key,$value)=each($var))
      {
        if (is_array($value))
        {
          DG($value,$key);
        }
        else
          echo "<dd>$key => $value";
      }
      echo "</dl>";
    }DG($vararray,"vararray");
    ?>