使用数组中的键创建新数组

时间:2017-11-24 10:39:57

标签: php arrays

我想通过指定key

创建一个新数组

例如我有一个数组:

$data = [
    0 => 'name',
    1 => '29',
    2 => '7/26 City Avenue',
]

我想制作像这样的新阵列

$data = [
    'name' => 'name',
    'age' => '29',
    'address' => '7/26 City Avenue',
]

如上所示制作新数组?

3 个答案:

答案 0 :(得分:2)

请试试这个

<?php
$keylabel=array("name","age","address");
$data=array("name","29","7/26 City Avenue");
$data_keylabel=array_combine($keylabel,$data);
print_r($data_keylabel);
?>

答案 1 :(得分:1)

<?php


$data = [
    0 => 'name',
    1 => '29',
    2 => '7/26 City Avenue',
];

$data['name'] = $data[0];
unset($data[0]);
$data['age'] = $data[1];
unset($data[1]);
$data['address'] = $data[2];
unset($data[2]);

print_r($data);

这是一个例子。您的新阵列按照您想要的方式设置了键。

答案 2 :(得分:0)

最简单但不清洁的解决方案是将其解析为新的数组,如

$data_new = [];
$data_new['name'] = $data[0];
$data_new['age' = $data[1];
$data_new['address'] = $data[2];

清洁工将是array_combine

参考Link

的示例
$a = array('gruen', 'rot', 'gelb');
$b = array('avokado', 'apfel', 'banane');
$c = array_combine($a, $b);

输出:
    排列     (         [gruen] =&gt; avokado         [rot] =&gt; APFEL         [gelb] =&gt; banane     )

希望有所帮助