Php 是否按索引值将数组附加到现有数组?
我有这样一个数组:Php 是否按索引值将数组附加到现有数组?,php,arrays,Php,Arrays,我有这样一个数组: Array ( [0] => 10060127 [1] => 10065127 [2] => 10070127 [3] => 10075127 ) 我想根据数组中的值添加关联数组。e、 g.查找10070127和一个包含各种其他信息的关联数组。比如: [1] => 10065127 => Time : 10:00 Date : 16/12/2014
Array (
[0] => 10060127
[1] => 10065127
[2] => 10070127
[3] => 10075127
)
我想根据数组中的值添加关联数组。e、 g.查找10070127和一个包含各种其他信息的关联数组。比如:
[1] => 10065127 => Time : 10:00
Date : 16/12/2014
Count : 1
$id = '10070127';
$array[array_search($id, $array)] = array($id=>array(
'time'=>'10:00',
'Date'=>'16/12/2014',
'Count'=>1));
如何识别正确的位置并将这些项目推送到该阵列?您可以尝试以下方法:
$dataArray = array(
0 => 10060127,
1 => 10065127,
2 => 10070127,
3 => 10075127
);
$toAdd = array(
1 => array(
10065127 => array("Time" => '10:00',
"Date" => '16/12/2014',
"Count" => '1'
)
),
2 => array(
10070127 => array("Time" => '17:25',
"Date" => '11/12/2014',
"Count" => '95'
)
)
);
foreach ($toAdd as $subArray) {
$toSearch = key($subArray);
$pos = array_search($toSearch, $dataArray);
if ($pos !== false) {
unset($dataArray[$pos]);
$dataArray[$toSearch] = $subArray[$toSearch];
}
}
var_dump ($dataArray);
输出将是:
array
0 => int 10060127
3 => int 10075127
10065127 =>
array
'Time' => string '10:00' (length=5)
'Date' => string '16/12/2014' (length=10)
'Count' => string '1' (length=1)
10070127 =>
array
'Time' => string '17:25' (length=5)
'Date' => string '11/12/2014' (length=10)
'Count' => string '95' (length=2)
比如:
[1] => 10065127 => Time : 10:00
Date : 16/12/2014
Count : 1
$id = '10070127';
$array[array_search($id, $array)] = array($id=>array(
'time'=>'10:00',
'Date'=>'16/12/2014',
'Count'=>1));
$myArray[0][10065127][]=新数组?然后添加值?如果我不知道10065127数组中的位置,那么使用数组搜索来获取密钥。您可以使用数组中或数组搜索作为@lolka\u bolka建议的值是否唯一?如果一个值在数组中出现多次怎么办?要替换所有实例还是仅替换第一个实例?