php数组合并元素

时间:2016-12-14 02:35:39

标签: php arrays

我在php中有数组。

Array
(
    [0] => Array
        (
            [1] => 10
            [2] => 5
        )

    [1] => Array
        (
            [1] => 1
            [2] => 2
        )

)

我想像这样转换它:

Array
(
    [0] => Array
        (
            [1] => 10
            [2] => 1
        )
    [1] => Array
        (
            [1] => 5
            [2] => 2
        )

)

最后我打算将这些基于密钥的数字更改为基于字符串。像这样:

$data = array(
           array(
              'title' => 'My title' ,
              'name' => 'My Name' ,
              'date' => 'My date'
           ),
           array(
              'title' => 'Another title' ,
              'name' => 'Another Name' ,
              'date' => 'Another date'
           )
        );

我对我将使用什么方法感到困惑。谢谢之前

1 个答案:

答案 0 :(得分:2)

遍历$ data数组,使用array_walk或foreach。

$o = [];
array_walk($data, function($v) use(&$o)
{
  foreach($v as $k => $value)
  {
    $o[$k][] = $value;
  }
});
var_dump($o);

输出:

array(3) {
  ["title"]=>
  array(2) {
    [0]=>
    string(8) "My title"
    [1]=>
    string(13) "Another title"
  }
  ["name"]=>
  array(2) {
    [0]=>
    string(7) "My Name"
    [1]=>
    string(12) "Another Name"
  }
  ["date"]=>
  array(2) {
    [0]=>
    string(7) "My date"
    [1]=>
    string(12) "Another date"
  }
}