| 本帖最后由 惜 于 2018-12-13 14:17 编辑 
 
 [PHP] 纯文本查看 复制代码 <?php
//创建数组以及输出数组的三种方式
        $temp = array(1,2,3,4,5,6); //定义数组$temp
        $temp1 = array(
                0=>"zero",
                1=>"one",
                2=>"two",
                3=>"three"
        );  //定义数组$temp1
        $temp2 = array(
                name =>"张三",
                sex =>"男",
                age =>"20"
        );  //定义数组$temp2
        echo $temp[0]; //输出数组
        echo "、";
        echo $temp[1];
        echo "、";
        echo $temp[2];
        echo "、";
        echo $temp[3];
        echo "、";
        echo $temp[4];
        echo "、";
        echo $temp[5];
        echo "、";
        echo $temp[6];
        echo "<p>";
        for($i=0;$i<count($temp1);$i++)  //循环输出数组
                echo $temp1[$i].",";
        echo "<p>";
        echo $temp2[name]; //输出数组
        echo "<p>";
        echo $temp2[sex];
        echo "<p>";
        echo $temp2[age];
//计算数组个数
        echo "<p>";
        echo "数组个数:".count($temp)."个";
//数组排序
        echo "<p>降序:";
        rsort($temp);                                        //降序
        for($i=0;$i<count($temp);$i++)  //循环输出数组
                echo $temp[$i].",";
        echo "<p>升序:";
        sort($temp);                                        //升序
        for($i=0;$i<count($temp);$i++)  //循环输出数组
                echo $temp[$i].",";
        echo "<p>";
//自定义排序
        echo "<p>自定义排序:";
        function temprsort($a,$b){
                if($a == "zero"){
                        if($b =="zero" ){
                                return 0;
                        }else if($b =="one"){
                                return 1;
                        }else if($b =="two"){
                                return 1;
                        }else{
                                return 1;
                        }
                }else if($a == "one"){
                        if($b =="zero" ){
                                return -1;
                        }else if($b =="one"){
                                return 0;
                        }else if($b =="two"){
                                return 1;
                        }else{
                                return 1;
                        }
                }else if($a == "two"){
                        if($b =="zero" ){
                                return -1;
                        }else if($b =="one"){
                                return -1;
                        }else if($b =="two"){
                                return 0;
                        }else{
                                return 1;
                        }
                }else {
                        if($b =="zero" ){
                                return -1;
                        }else if($b =="one"){
                                return -1;
                        }else if($b =="two"){
                                return -1;
                        }else{
                                return 0;
                        }
                }
                
        }
        usort($temp1,"temprsort");
        for($i=0;$i<count($temp1);$i++)  //循环输出数组
                echo $temp1[$i]." ";
//移动数组指针
        echo "<p>移动数组指针<p>";
        echo "指针当前指向:";
        echo current($temp1); //打印当前数组元素,以确定指针位置
        echo "<p>";
        echo "指针后移一位:";
        next($temp1);  //数组指针后移一位
        echo current($temp1); //查看当前数组指针指向
        echo "<p>";
        echo "指针移动尾部:";
        end($temp1);  //把数组指针移动的数组尾部
        echo current($temp1); //查看是否已到尾部
        echo "<p>";
        echo "指针前移一位:";
        prev($temp1);  //把数组指针前移一位
        echo current($temp1); //查看指针指向情况
        echo "<p>";
        echo "指针移动到头部:";
        reset($temp1);  //把数组指针指向头部
        echo current($temp1); //查看是否已到头部
        
//获取数组当前元素
        echo "<p>获取数组当前元素<p>";
        echo current($temp1);
//移去数组中重复的值
echo "<p>移去数组中重复的值<p>";
        $temp1[4] = "two";
        $temp1[5] = "one";
        echo "去重前:";
        for($i=0;$i<count($temp1);$i++)  //循环输出数组
                echo $temp1[$i].",";
        echo "<p>";
        $temp3 = array_unique($temp1);
        echo "去重后:";
        for($i=0;$i<count($temp3);$i++)  //循环输出数组
                echo $temp3[$i].",";
        echo "<p>";
//计算数组中所有值出现的次数
echo "<p>计算数组中所有值出现的次数<p>";
        $new1 = array_count_values($temp1); //使用 array_count_values()进行处理
        
        echo "zero 出现的次数为:";
        echo $new1[zero];                  //打印 zero 出现的次数
        echo "<p>";
        echo "one 出现的次数为:";
        echo $new1[one];                  //打印 one 出现的次数
        echo "<p>";
        echo "two 出现的次数为:";
        echo $new1[two];                  //打印 two 出现的次数
?>结果:
 1、2、3、4、5、6、
 zero,one,two,three, 张三 男 20 数组个数:6个 降序:6,5,4,3,2,1, 升序:1,2,3,4,5,6, 
 自定义排序:three two one zero 移动数组指针 指针当前指向:three 指针后移一位:two 指针移动尾部:zero 指针前移一位:one 指针移动到头部:three 获取数组当前元素 three 移去数组中重复的值 去重前:three,two,one,zero,two,one, 去重后:three,two,one,zero, 
 计算数组中所有值出现的次数 zero 出现的次数为:1 one 出现的次数为:2 two 出现的次数为:2 
 |