PHP 多个key取数组值 or 数组固定位置key排序
不是经常使用 记录下预防忘记
多个key取数组值
$keys = ['a','b','c','d'];
$array = ['a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5];
echo '<pre>';
var_dump(array_intersect_key($array,array_flip($keys)));
//array(4) {
// ["a"]=>
// int(1)
// ["b"]=>
// int(2)
// ["c"]=>
// int(3)
// ["d"]=>
// int(4)
//}
数组固定位置key排序
$keys = ['a','b','c','d'];
//乱的顺序
$array = ['b'=>1,'d'=>2,'c'=>3,'a'=>4,'e'=>5];
echo '<pre>';
$new_arr = array_intersect_key($array,array_flip($keys));
var_dump($new_arr);
//打印发现KEY错乱
//array(4) {
// ["b"]=>
// int(1)
// ["d"]=>
// int(2)
// ["c"]=>
// int(3)
// ["a"]=>
// int(4)
//}
var_dump(array_merge(array_flip($keys),$new_arr));
//数组合并实现key位排序
//array(4) {
// ["a"]=>
// int(4)
// ["b"]=>
// int(1)
// ["c"]=>
// int(3)
// ["d"]=>
// int(2)
//}