在PHP中格式化数组
我正在从数据库中提取一个数组,看起来是这样的:在PHP中格式化数组,php,arrays,Php,Arrays,我正在从数据库中提取一个数组,看起来是这样的: Array ( [0] => Array ( [tracker_id] => 28 [tracking_numbers] => hdkshwuy47937892hd ) [1] => Array ( [tracker_id] => 28 [tracking_n
Array
(
[0] => Array
(
[tracker_id] => 28
[tracking_numbers] => hdkshwuy47937892hd
)
[1] => Array
(
[tracker_id] => 28
[tracking_numbers] => 797825464411
)
)
我需要将其重新格式化为如下所示:
Array
(
[0] => Array
(
[tracker_id] => 28
[tracking_numbers] => Array
(
[0] => hdkshwuy47937892hd
[1] => 797825464411
)
)
)
我似乎无法在数组或键中找到正确的搜索,无法为单个跟踪器id创建数字数组。试试这个
$arr_output = array();
foreach($arr_input as $arr)
{
$tracker_id = $arr['tracker_id'];
$tracking_numbers = $arr['tracking_numbers'];
$arr_output[$traker_id][] = $tracking_numbers;
}
print_r($arr_output);
更新2:
$arr_output = array();
$arr_output1 = array();
foreach($arr_input as $arr)
{
$tracker_id = $arr['tracker_id'];
$tracking_numbers = $arr['tracking_numbers'];
$arr_output[$traker_id][] = $tracking_numbers;
}
$i=0;
foreach($arr_output as $key=>$value)
{
$arr_output1[$i]['tracker_id']=$key
$arr_output1[$i]['tracking_numbers']=$value
$i+=1;
}
print_r($arr_output1);
用于 <?php
$a=array
( array
('tracker_id' => 28,
'tracking_numbers'=> "hdkshwuy47937892hd"
),
array('tracker_id' => 28,
'tracking_numbers' => "797825464411",
) );
$a[0]['tracking_numbers']=array_column($a,"tracking_numbers");
unset($a[1]);
print_r($a);
差不多了。但这会将数组键设置为tracker_id,这并不完全正确。让我试试你的更新。遗憾的是,我的客户端所在的服务器不是5.5