排序函数

sort():顺序排序(下标重排,下标和值的关系改变)
rsort():逆序排序 (同上)
asort():顺序排序(下标保留,下标和值的对应关系不变)
arsort():逆序排序 (同上)

ksort():顺序排序:按照键名进行对值进行排序。
krsort():逆序排序:按照键名进行对值进行排序。
shuffle():随机打乱数组元素,数组下标会重排

指数函数

reset():重置指针,将数组指针指向首位
end():重置指针,将数组指针指向最后一个元素

next():指针下移,取得下一个元素的值
prev():指针上移,取得上一个元素的值

current():获取当前指针对应的元素值
key():获取当前指针对应的下标值

注意事项:next和prev会移动指针,有可能导致指针移动到最前或者最后(离开数组),导致数组不能使用,通过next和prev不能回到正确的指针位置。只能通过end或者reset进行指针重置

<?php
    /*
     * reset()重置指针
     * end()重置指针,将数组指针指向最后一个
     *
     */
    $arr=array(3,1,2,5,9,6);
    echo reset($arr);//3
    echo end($arr);//6
    /*
     * next():指针下移,取得下一个元素的值
     * prev():指针上移,取得上一个元素的值
     */
    echo prev($arr);//9
    echo next($arr);//6
    /*
     *current():获取当前指针对应的元素值
     */
    echo current($arr);//6
    /*
     * key():获取当前指针对应的下标值
     */
    echo key($arr);//5
?>

其他函数

<?php
/*
 * count()统计数组中元素的数量。
 * array_push()往数组中加入一个元素(在数组最后添加)
 * array_pop()从数组中调出一个元素并返回(从数组最后开始)
 * array_shift()从数组中调出一个元素并返回(从数组开头)
 * array_unshift从数组中加入一个元素(数组开头)
 */

/*PHP模拟数据结构(利用上面四个函数)
栈先进后出 用的是
先进:array_push() 后出:array_pop()
*/
$arr=[];
//先进
array_push($arr,2);
array_push($arr,1);
array_push($arr,9);
print_r($arr);
echo "<br/>";
//后出
echo array_pop($arr),array_pop($arr),array_pop($arr);
echo "<hr/>";
    /*队列:排队,先进去的先出去(FIFO)
    1.array_push   array_shift
    2.array_unshift array_poop
    */
    $arr2=[];
    //第一种方案
    array_push($arr2,6);
    array_push($arr2,4);
    array_push($arr2,1);
    print_r($arr2);
    echo array_shift($arr2),array_shift($arr2),array_shift($arr2);
    echo "<hr/>";
    //第二种方案
    $arr3=[];
    array_unshift($arr3,2);
    array_unshift($arr3,3);
    array_unshift($arr3,7);
    print_r($arr3);
    echo array_pop($arr3);
    echo array_pop($arr3);
    echo array_pop($arr3);


?>

array_reverse():返回单元顺序相反的数组

<?php
    /*
     * array_reverse()返回顺序相反的数组
     */
    $arr=[1,2,3,4,5];
    print_r(array_reverse($arr));
?>

结果:

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)

in_array():判断一个元素在数组中是否存在

<?php
    /*
     * array_reverse()返回顺序相反的数组
     */
    $arr=[1,2,3,4,5];
    var_dump(in_array(1,$arr));
?>
结果:bool(true)

array_keys():获取一个数组的所有下标,返回一个索引数组
array_values():获取一个数组的所有值,返回一个索引数组

<?php
    /*
     * array_reverse()返回顺序相反的数组
     */
    $arr=[1,2,3,4,5];
    print_r(array_keys($arr));
    echo "<br/>";
    print_r(array_values($arr));
?>

请输入图片描述