知识点:数组排序
一、正向排序
1、sort($arr):按值升序排列,键名按索引方式重置。
2、asort($arr):按值升序排列,键名保留与值的对应。
3、ksort($arr):按键名升序排列,适合于关联数组,键值对应关系不变。
二、逆向排序
1、rsort($arr):按值降序排列,键名按索引方式重置
2、arsort($arr):按值降序排列,键名保留与值的对应
3、krsort($arr):按键名降序排列,适合于关联数组,键值对应关系不变
实例
//格式化输出
echo '
';
//正向排序
echo '
正向排序
';// 正向排序、键名重置
echo 'sort($arr)按值升序排列,键名按索引方式重置
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
sort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
//正向排序、键名不重置
echo '
asort($arr)按值升序排列,键名保留与值的对应
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
asort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
//正向排序,按键名排序。键名不重置
echo '
ksort($arr)按键名升序排列,适合于关联数组,键值对应关系不变
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
ksort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
echo '
';
echo '
逆向排序
';// 逆向排序、键名重置
echo 'rsort($arr)按值降序排列,键名按索引方式重置
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
rsort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
//逆向排序、键名不重置
echo '
arsort($arr)按值降序排列,键名保留与值的对应
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
arsort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
//逆向排序,按键名排序。键名不重置
echo '
krsort($arr)按键名降序排列,适合于关联数组,键值对应关系不变
';
$data = ['name'=>'Jack','age'=>26,'work'=>'技术','city'=>'南通','22'];
krsort($data);
foreach ($data as $key => $value) {
echo '['.$key.']=>'.$value.' 值长度:'.strlen($value).'
';
}
运行实例 »
点击 "运行实例" 按钮查看在线实例