用户登录

现在我这里有一个数组 ... some_number .. PHP 5.4 以上的版本,可以直接使用方框号去定义数组 ...

这个数组里面是一些数字类型的值 ... 这里我用 var_dump ... 把这个数组输出到了屏幕上... 你会看到,数组项目的顺序,就是我们在定义这个数组时候的顺序 ...

下面用 sort() 函数,去给它重新排下顺序 ...

var_dump
(
$some_number,
sort($some_number)
);

注意,这个函数只会返回 true 或者 false ,并不会返回排序之后的数组 ... 函数的参数是用引用的方式传递进来的 .. command + k ,可以查看一下这个函数的文档 ...

你会发现,这个 array 参数... 前面有一个 & 符号,表示这是用引用方式传递进来的参数 .. 也就是,这个 sort() 函数,会改变传递进来的变量的值 ...

在这个 sort() 函数的下面,我们再试着输出这个 $some_number 数组的值 ..

var_dump
(
$some_number,
sort($some_number),
$some_number
);

现在,$some_number 这个数组里的项目的顺序就有些变化了,排在第一个的是数字 1 ,因为它是这个数组里面最小的数字 ... 然后是 3,最后是 6 。

sort_flags

在 sort 函数里,设置它的第二个参数,可以改变按照什么类型的值来排序 ... 比如我们想要按照数字类型的值排序,可以在这里,加上一个 SORT_NUMERIC

sort($some_number, SORT_NUMERIC),

这里得到的结果是一样的 ... 下面再给 $some_number 这个数字添加一个项目 .. 加上一个数字 11 ...

$some_number = [3, 6, 1, 11];

你会看到,如果按照数字类型的值来排序的话,数字 11 会在最后,因为它是这个数字里面最大的一个数 ...

这回我们再把这个 SORT_NUMERIC 换成 SORT_STRING ,按照字符类型的值来排序 ...

sort($some_number, SORT_STRING),

这次,数字11会排在数字1的下面 ... 因为现在会把数组项目的所有的值当成字符串来看待。

倒序

想要倒序排列的话 ... 可以把 sort ... 换成 rsort ...

rsort($some_number),

这个函数会把它认为是最大值的数组项目排在第一位 ...

0:00
0:00
4:42
0:00
2:17
0:00
0:00
0:00
1:22
3:45
0:00
0:00

对数组排序 - sort《 PHP 基础 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点