数组的相关函数
1)排序函数:对数组元素进行排序,都是按照ASCII码进行比较,可以进行英文比较
sort():顺序排序(下标重排)
rsort():逆序排序
asort():顺序排序(下标保留)
arsort():逆序排序
ksort():顺序排序:按照键名(下标)
krsort():逆序排序
shuffle():随机打乱数组元素,数组下标会重排
2)指针函数
reset():重置指针,将数组指针回到首位
end():重置指针,将数组指针指导最后一个元素
next():指针下移,取得下一个元素的值
prev():指针上移,取得上一个元素的值
current():获取当前指针对应的元素值
key():获取当前指针对应的下标值
注意事项:next和prev会移动指针,有可能导致指针移动到最前或者最后(离开数组),导致数组不能使用,通过next和prev不能回到真确的指针位置。只能通过end或者reset进行指针重置
3)其他函数
count():统计数组中元素的数量
array_push():往数组中加入一个元素(数组后面)
array_pop():从数组中取出一个元素(数组后面)
array_shift():从数组中取出一个元素(数组前面)
array_unshift():从数组中加入一个元素(数组前面)
PHP模拟数据结构:
栈:压栈,先进去后出来(FILO)
队列:排队,先进去的先出去(FIFO)
array_reverse():数组元素反过来
in_array():判断一个元素在数组中是否存在
array_keys():获取一个数组的所有下标,返回一个索引数组
array_values():获取一个数组的所有值,返回一个索引数组
//PHP数组相关函数-排序函数
$arr = array(3,1,5,2,0);
echo '<pre>';
$sort_arr = sort($arr);
//asort($arr);
//krsort($arr);
//print_r($arr);
shuffle($arr);
//print_r($arr);
shuffle($arr);
//print_r($arr);
$arr = array(3,1,5,2,0);
//指针函数
//echo current($arr),'<br/>';
//echo key($arr),'<br/>';
//echo next($arr),next($arr),'<br/>';
//echo prev($arr),'<br/>';
//echo end($arr),'<br/>';
//echo reset($arr),'<br/>';
//其他函数
//模拟数据结构:栈和队列
$arr = array();
//栈:先压栈后出栈:都是从一端出来
//前面:array_shift/array_unshift
//后面:array_push/array_pop
//压栈
array_push($arr,3);
array_push($arr,2);
array_push($arr,1);
//print_r($arr);
//出栈
//echo array_pop($arr),array_pop($arr),array_pop($arr),'<br/>';
//队列:先排队,先出来,一端进,另外一端出
//后进前出:array_push/array_shift
//前进后出:array_unshift/array_pop
$arr = array();
//入队
array_unshift($arr,3);
array_unshift($arr,2);
array_unshift($arr,1);
//print_r($arr);
//出队
//echo array_pop($arr),array_pop($arr),array_pop($arr),'<br/>';
$arr = array(1,2,3,6,5);
//print_r(array_reverse($arr));
//var_dump(in_array(6,$arr));
//var_dump(in_array(100,$arr));
print_r(array_keys($arr));
print_r(array_values($arr));