数组相关函数
自定义数组打印函数,便于查看
function print_array($array){
foreach($array as $key => $value){
echo "$key => $value\n";
}
}
排序函数
按照 ASCII 码排序
sort
对 array 本身按照值(value)升序排序。(下标重排)
sort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
sort($arr);
print_array($arr);
// 0 => Jack
// 1 => Steve
// 2 => Tom
rsort
对 array 本身按照值(value)降序排序。
rsort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
rsort($arr);
print_array($arr);
// 0 => Tom
// 1 => Steve
// 2 => Jack
asort
对 array 自身按照升序进行排序(下标保留)
asort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
asort($arr);
print_array($arr);
// 1 => Jack
// 2 => Steve
// 0 => Tom
arsort
对 array 本身按照降序排序
arsort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
arsort($arr);
print_array($arr);
// 0 => Tom
// 2 => Steve
// 1 => Jack
ksort
对 array 本身进行按键(key)升序排序。
ksort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
ksort($arr);
print_array($arr);
// 0 => Tom
// 1 => Jack
// 2 => Steve
krsort
对 array 本身按照键(key)降序排序。
krsort(array &$array, int $flags = SORT_REGULAR): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
krsort($arr);
print_array($arr);
// 2 => Steve
// 1 => Jack
// 0 => Tom
shuffle
随机打乱
shuffle(array &$array): bool
// eg:
$arr = ['Tom', 'Jack', 'Steve'];
shuffle($arr);
print_array($arr);
// 0 => Jack
// 1 => Steve
// 2 => Tom
指针函数
reset 将 array 的内部指针倒回到第一个单元并返回第一个数组单元的值。
reset(array|object &$array): mixed
end 将 array 的内部指针移动到最后一个单元并返回其值。
end(array|object &$array): mixed
next 将数组中的内部指针向前移动一位
next(array|object &$array): mixed
prev 将数组的内部指针倒回一位
prev(array|object &$array): mixed
current 返回数组中的当前值
current(array|object $array): mixed
key 返回数组中当前单元的键名。
key(array|object $array): int|string|null
注意:next 和 prev 移动指针,可能移出数组,只能通过 end 或者 reset 重置指针
示例
$arr = [1, 3, 5, 7, 9];
echo next($arr);
echo next($arr);
echo prev($arr);
echo current($arr);
echo key($arr);
echo reset($arr);
echo end($arr);
// 3533119
其他函数
count 统计数组、Countable 对象中所有元素的数量
count(Countable|array $value, int $mode = COUNT_NORMAL): int
// eg:
$arr = [1, 2, 3, 4, 5];
echo count($arr);
// 5
array_push 将 array 当成一个栈,并将传入的变量压入 array 的末尾。
array_push(array &$array, mixed $value1, mixed $... = ?): int
// 和如下效果相同:
$array[] = $var;
array_pop 弹出并返回 array 最后一个元素的值
array_pop(array &$array): mixed
array_shift 将 array 的第一个单元移出并作为结果返回
array_shift(array &$array): mixed
array_unshift 在数组开头插入一个或多个单元
array_unshift(array &$array, mixed ...$values): int
数据结构
- 栈 压栈,FILO先进后出
- 队列 排队,FIFO 先进先出
实现栈:
- 前面 array_unshift/array_shift
- 后面 array_push/array_pop
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?