我的问题是,我想组合两个数组,一个数组包含一个表的标题,另一个数组包含数据。我想创建一个以列名作为键的关联数组。不知何故,我得到了意外的结果(将键应用于错误的数组),无法弄清原因。
$header = array(array('Name','Position','Salary'));
$data = array(
array('John','Manager','30000'),
array('Cindy','Associate','50000'),
array('Paul','Staff','20000'),
array('Mandy','Staff','100000')
);
array_walk($data, function(&$value, &$key) use ($header) {$value = array_fill_keys($header[0],$value);});
var_dump($data);
以下是在线版本的链接: http://sandbox.onlinephpfunctions.com/code/5ad09dbf2c0af5d87f17c64118b9c68a7374a666
我要实现的是,$ data中的每一行都有$ header [0]作为键。
问候 基督徒
答案 0 :(得分:1)
使用array_combine
array_walk($data, function(&$value, &$key) use ($header) {$value = array_combine($header[0],$value);});
答案 1 :(得分:1)