是否有一些与此代码等效的php函数?
$pairs = [['id' => 1, 'pairType' => 2], ['id' => 2, 'pairType' => 2], ['id' => 3,'pairType' => 3]];
$tmp = some_php_function($pairs, 'pairType');
在tmp中将是
$tmp = [ 2 => [1, 2], 3 => [3]]
我使用了这段代码
foreach ($pairs as $pair) {
$tmp[$pair['pairType']][] = $pair['id'];
}
但是我希望php会有一些默认功能。感谢
答案 0 :(得分:0)
没有内置功能,但您可以使用以下逻辑创建自己的功能:
$pairs = [['id' => 1, 'pairType' => 2], ['id' => 2, 'pairType' => 2], ['id' => 3, 'pairType' => 3]];
$temp = [];
foreach($pairs as $v)
{
if (!isset($temp[$v['pairType']]))
{
$temp[$v['pairType']] = [];
}
array_push($temp[$v['pairType']], $v['id']);
}
var_dump($temp);