我想要分割一个数组:
根据每个项目的颜色属性,填充相应的子数组。
我的
似乎不存在一个名为array_split的函数来生成所有过滤后的数组,或者我需要一种类似于lambda函数的东西。
$o = json_decode('[{"id":"1","color":"green"},{"id":"2","color":"green"},{"id":"3","color":"yellow"},{"id":"4","color":"green"}]');
根据每个项目的颜色属性,填充相应的子数组。
$a = array("green", "yellow", "blue");
function isGreen($var){
return($var->color == "green");
}
$greens = array_filter($o, "isGreen");
$yellows = array_filter($o, "isYellow");
// and all possible categories in $a..
我的
$a
长度大于20,而且可能会增加,因此我需要一种通用的方法,而不是手动编写函数。似乎不存在一个名为array_split的函数来生成所有过滤后的数组,或者我需要一种类似于lambda函数的东西。
$a
中的每个值编写一个函数?还是我理解有误? - gen_Eric