0

我的意思是创建具有相同键但每个值都在第二个参数中指定的新数组。

就像你有array_fill_keys

 array array_fill_keys ( array $keys , mixed $value )

$keys多维数组在哪里

4

1 回答 1

1

不是我知道的,但你可以试试

$array = array("A","B");
$array["C"] = array("X","Y");
$array["C"]['Z'] = array(1,2,3);

var_dump(fillKeys($array, "banana"));

function fillKeys($keys, $value) {
    $return = array();
    foreach ( $keys as $key => $val ) {
        $return[is_array($val) ? $key : $val] = is_array($val) ? fillKeys($val, $value) : $value;
    }
    return $return;
}

输出

array (size=3)
  'A' => string 'banana' (length=6)
  'B' => string 'banana' (length=6)
  'C' => 
    array (size=3)
      'X' => string 'banana' (length=6)
      'Y' => string 'banana' (length=6)
      'Z' => 
        array (size=3)
          1 => string 'banana' (length=6)
          2 => string 'banana' (length=6)
          3 => string 'banana' (length=6)
于 2012-11-13T22:39:45.077 回答