假设你有这么一个关联数组:
// original array
$user = [
'age' => 45,
'email' => 'john@doe.com',
'last_login' => '2016-10-21',
'name' => 'John Doe'
];
而你希望按这样的键序来排序:
// sort order we want
$order = ['name', 'email', 'age', 'last_login'];
实现方法:
// PHP 4+
$ordered_array = array_merge(array_flip($order), $user);
出来的效果是:
Array(
'name' => 'John Doe',
'email' => 'john@doe.com',
'age' => 45,
'last_login' => '2016-10-21'
);
简单解释:
- array_flip()将数组的键=>值对调。
- array_merge()合并两个数组,键相同的,由后面的数组覆盖值。
评论