所以我有一个与此类似的数组
$arr[0]['name'] = 'Name';
$arr[0]['id'] = 2382;
$arr[1]['name'] = 'Name';
$arr[1]['id'] = 2838;
$arr[2]['name'] = 'Name';
$arr[2]['id'] = 2832;
如何使用数组的id值重新格式化数组替换初始索引(0,1,2)?这可能吗?最后一个数组就像这样
$arr[1922]['name'] = 'Name';
$arr[2929]['name'] = 'Name';
$arr[3499]['name'] = 'Name';
由于
答案 0 :(得分:2)
这很简单。
这只是一个循环遍历原始数组并构建新数组的情况。
完成后,您可以根据需要更换旧阵列。
foreach ( $arr as $thisArray ) {
$aNewArray[ $thisArray['id']]['name'] = $thisArray['name'];
}
$arr = $aNewArray;
如果数组中有任意数量的元素,并且您只想清除ID并保留其余部分,则可以在进行时取消设置ID并使用生成的数组:
foreach ( $arr as $thisArray ) {
$id = $thisArray['id'];
unset( $thisArray['id'] );
$aNewArray[ $id ] = $thisArray;
}
$arr = $aNewArray;