查找与阵列相同的密钥的所有项目,并在一个新的
结合他们让我们假设我们有一个多维数组象下面这样:查找与阵列相同的密钥的所有项目,并在一个新的
$obj = array
(
array("carName"=>"Volvo","carColor"=>"Red", "carSpeed"=> "100 mph"),
array("carName"=>"Volvo","carColor"=>"Blue", "carSpeed"=> "100 mph"),
array("carName"=>"BMW","carColor"=>"White", "carSpeed"=> "120 mph"),
array("carName"=>"BMW","carColor"=>"Grey", "carSpeed"=> "120 mph")
);
我怎么能在一个单一的阵列组合每"carName"
的"carColor"
所以我得到:
$newObj = array
(
array("carName"=>"Volvo","carColor"=> array("Red", "Blue"), "carSpeed"=> "100 mph"),
array("carName"=>"BMW","carColor"=> array("White", "Grey"), "carSpeed"=> "120 mph")
);
如果你的名字与车名的每个阵列(不知道的事项),你可以这样来做
foreach($obj as $x=>$y){
$new[$y['carName']]['carName']=$y['carName'];
$new[$y['carName']]['carColor'][]=$y['carColor'];
$new[$y['carName']]['carSpeed']=$y['carSpeed'];
}
这样做的工作!这样一个基本的东西。 –
可以修改为不插入双数到数组中? –
是更改$ new [$ y ['carName']] ['carColor'] [] = $ y ['carColor'];到$ new [$ y ['carName']] ['carColor'] [$ y ['carColor']] = $ y ['carColor']; –
如果您尝试过任何操作,请分享? – C2486
我有种尝试for循环来存储carName每次它改变,但它根本不工作,猜我不够熟悉写这种代码。虽然它看起来很基本... –