PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key
Posted Hello,World!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key相关的知识,希望对你有一定的参考价值。
得益于php的强大的内置数组函数
array_column();
array_combine();
举个小栗子:
<?php // 先查询出用户的基本信息 $userArray = [[\'id\' => \'zs\', \'name\' => \'张三\'], [\'id\' => \'ls\', \'name\' => \'李四\'], [\'id\' => \'wr\', \'name\' => \'王二\']]; // 将二维数组内某具体列的值组成一个新用户数组 $userArrayNew = array_column($userArray, \'id\'); // 将新用户数组和分数数组合并(得到一个新分数数组),并将第一个数组的元素作为第二个数组元素的key $userArrayCombine = array_combine($userArrayNew, $userArray); echo "重新组装后的用户数组" . PHP_EOL; var_dump($userArrayCombine); // 根据id(in)查询出分数成绩 $scoreArray = [[\'id\' => \'zs\', \'score\' => 98], [\'id\' => \'ls\', \'score\' => 100], [\'id\' => \'wr\', \'score\' => 99]]; // 查询出的列表要返回,并且要把名字带上 foreach ($scoreArray as &$v) { if (!empty($userArrayCombine[$v[\'id\']][\'name\'])) { $v[\'name\'] = $userArrayCombine[$v[\'id\']][\'name\']; } else { $v[\'name\'] = \'\'; } } echo "重新组装后的分数数组" . PHP_EOL; var_dump($scoreArray);
以上是关于PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key的主要内容,如果未能解决你的问题,请参考以下文章