<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            PHP 數組排序方法總結

            時間:2025-03-18 15:46:49 php語言 我要投稿
            • 相關推薦

            PHP 數組排序方法總結

              文章詳細的介紹了快速創建數組的函數range()和常見PHP數組排序的方法,希望對大家有幫助。

            PHP 數組排序方法總結

              隨著PHP的快速發展,用它的人越來越多,在PHP數組學習摘錄部分了解到最基本的PHP數組的建立和數組元素的顯示。需要深入學習下PHP數組的相關操作。首先接觸的就是PHP數組排序、降序的排序問題。

              sort:本函數為 array 中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序。

              rsort:本函數對數組進行逆向排序(最高到最低)。 刪除原有的鍵名而不僅是重新排序。

              asort:對數組進行排序并保持索引關系

              arsort:對數組進行逆向排序并保持索引關系

              ksort:對數組按照鍵名排序,保留鍵名到數據的關聯

              krsort:對數組按照鍵名逆向排序,保留鍵名到數據的關聯

              natsort:對字母數字字符串進行排序并保持原有鍵/值的關聯

              natcasesort:同natsort排序算法,但不區分大小寫字母排序

              PHP 數組排序(sort)數字索引數組排序:

              函數:sort(array, [sort type])

              說明:sort()函數按升序對指定數組(第一個參數)進行排序。

              sort函數第二參數作用為指定排序類型,是可選參數,可能的值為:

              SORT_REGULAR: 默認值,不改變類型進行排序;

              SORT_NUMERIC: 把值作為數字進行排序;

              SORT_STRING: 把值作為字符串進行排序;

              如數組中有4和”37″,按數字排序,4小于”37″;按字符串排序,4大于”37″;

              代碼如下:

              <?php

              $a = array(4,"37",3,100,0,-5);

              sort($a);

              for ($i=0; $i<6; ++$i){

              echo $a[$i]." ";

              }

              echo "

              ";

              sort($a,SORT_STRING);

              for ($i=0; $i<6; ++$i){

              echo $a[$i]." ";

              }

              echo "

              ";

              ?>

              輸出結果:

              -5 0 3 4 37 100

              -5 0 100 3 37 4

              降序排序:rsort(array, [sort type])參數用法與sort函數相同。

              關聯數組排序:

              函數:asort(array, [sort type])

              說明:根據關聯數組的元素值進行升序排序。參數使用見上面的sort函數。

              函數:ksort(array, [sort type])

              說明:根據關聯數組的關鍵字進行升序排序。參數使用見上面的sort函數。

              代碼如下:

              <?php

              $a = array(

              "good" => "bad",

              "right" => "wrong",

              "boy" => "girl");

              echo "value sort

              ";

              asort($a);

              foreach($a as $key => $value){

              echo "$key : $value

              ";

              }

              echo "

              key sort

              ";

              ksort($a);

              foreach($a as $key => $value){

              echo "$key : $value

              ";

              }

              ?>

              輸出結果:

              value sort

              good : bad

              boy : girl

              right : wrong

              key sort

              boy : girl

              good : bad

              right : wrong

              降序排序:

              arsort(array, [sort type]) 與 asort對應

              krsort(array, [sort type]) 與 ksort對應

              快速創建數組的函數range()

              比如range()函數可以快速創建從1到9的數字數組:

              代碼如下:

              <?php

              $numbers=range(1,9);

              echo $numbers[1];

              ?>

              當然,使用range(9,1)則創建了9到1的數字數組。同時,range()還可以創建從a到z 的字符數組:

              代碼如下:

              <?php

              $numbers=range(a,z);

              foreach ($numbers as $mychrs)

              echo $mychrs." ";

              ?>

              使用字符數組時注意大小寫,比如range(A,z)和range(a,Z)是不一樣的。range()函數還具有第三個參數,該參數的作用是設定步長,比如range(1,9,3)創建的數組元素是:1、4、7。常見PHP數組排序一般數組中的各元素均以字符或數字表現的,所以可對數組元素進行升序排列,該功能函數為sort()。比如:

              代碼如下:

              <?php

              $people=array('name','sex','nation','birth');

              foreach ($people as $mychrs)

              echo $mychrs." ";

              sort($people);

              echo "

              ---排序后---

              ";

              foreach ($people as $mychrs)

              echo $mychrs." ";

              ?>

              升序排序后的數組元素顯示為 birth name nation sex,當然,sort()函數是區分字母大小寫的(字母從大到小的順序是:A…Z…a…z)

              Sort()函數還具有第二參數,用來說明PHP數組排序升序的規則是用來比較數字還是字符串的。比如:

              代碼如下:

              <?php

              echo "---按數字升序排序---

              ";

              $num2=array('26','3',);

              sort($num2,SORT_NUMERIC);

              foreach ($num2 as $mychrs)

              echo $mychrs." ";

              echo "

              ---按字符升序排序---

              ";

              $num3=array('26','3');

              sort($num3,SORT_STRING);

              foreach ($num3 as $mychrs)

              echo $mychrs." ";

              ?>

              SORT_NUMERIC和SORT_STRING用來聲明按數字或字符的升序排列。如果按照數字升序排列是:3,26;但如果按照字符升序排列則是:26,3了。PHP中除了升序函數以外,還有降序或稱反向排列的函數,就是rsort()函數,比如:$num1=range(1,9);rsort($num1);這里其實就相當于range(9,1)。

            【PHP 數組排序方法總結】相關文章:

            PHP數組的排序03-08

            PHP二維數組排序的方法03-23

            PHP二維數組排序方法06-24

            分析php選擇排序法實現數組排序的方法07-19

            PHP中數組的分組排序07-26

            PHP 多維數組的排序問題12-06

            PHP中數組的分組排序實例02-10

            php對特殊語句查詢結果進行數組排序的方法技巧07-01

            PHP對特殊語文查詢結果進行數組排序的方法介紹03-07

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看