array_map的一个特殊应用

October 12th, 2009 by Dream☆Wing Leave a reply »

通常array_map用来做回调函数,不过在手册中有一个特殊的应用:

将每个数组对应的key的值进行组合生成一个数组,并将所有的值的数组组合成一个2维数组

Example #4 Creating an array of arrays

<?php
$a
= array(1, 2, 3, 4, 5);
$b = array("one", "two", "three", "four", "five");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);
?>

The above example will output:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => one
            [2] => uno
        )

    [1] => Array
        (
            [0] => 2
            [1] => two
            [2] => dos
        )

    [2] => Array
        (
            [0] => 3
            [1] => three
            [2] => tres
        )

    [3] => Array
        (
            [0] => 4
            [1] => four
            [2] => cuatro
        )

    [4] => Array
        (
            [0] => 5
            [1] => five
            [2] => cinco
        )

)

Example #5 array_map() - with string keys
$arr = array("stringkey" => "value");
var_dump(array_map(null, $arr));
var_dump(array_map(null, $arr, $arr));

array(1) {
  ["stringkey"]=>
  string(5) "value"
}
array(1) {
  [0]=>
  array(2) {
    [0]=>
    string(5) "value"
    [1]=>
    string(5) "value"
  }
}

  • Share/Save/Bookmark
Advertisement
Post comment as twitter logo facebook logo
Sort: Newest | Oldest