配列のソートは配列の一般的な操作です (もう 1 つの一般的な操作は、前の記事で紹介したループです。興味がある場合は、「PHP ループ学習 4: foreach ステートメントの使用方法」を参照してください。配列 Element》を走査して変更することで、配列内の要素を並べ替えることで、データを効果的かつ合理的に管理し、プログラムの実行効率を向上させることができます。
今日は、配列ソートの昇順操作を見て、昇順でソートできるいくつかの配列関数を紹介し、コード例を使用して、これらの配列ソート関数がどのように昇順ソートを実行するかを示します。 (添付: PHP 関数配列配列関数のビデオ説明)
PHP ではよく使用される 3 つの配列の昇順ソート関数があります:
sort() : 配列要素を昇順に並べ替えます
1. sort() 関数を使用します
sort() 関数で配列をソートします。要素は昇順 (小さいものから大きいもの、低いものから高いもの) にソートされます。<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2); var_dump($arr2); ?>
sort() 関数には 2 つのパラメータがあります: $array (必須) と $sortingtype (省略可能) )。このうち、$sortingtype パラメータは、関数のソート モードを定義し、配列の要素/項目の比較方法を指定するために使用されます。デフォルト値は "SORT_REGULAR" です。 $sortingtype パラメータは次の値に設定できます:
出力結果:
- 0 = SORT_REGULAR: 型を変更せずに配列要素を通常どおり比較します (デフォルト値);
- 1 = SORT_NUMERIC: 配列要素を数値として扱う;
##2 = SORT_STRING: 配列要素を文字列として扱う;- 3 = SORT_LOCALE_STRING: 現在のロケール (setlocale() で変更可能) に基づいて、配列要素を文字列として比較します。
- 4 = SORT_NATURAL: natsort() と同様に、配列要素ごとに文字列を「自然な順序」で並べ替えます。これは PHP5.4.0 の新機能です。
- 5 = SORT_FLAG_CASE: 大文字と小文字を区別しない並べ替え文字列である SORT_STRING または SORT_NATURAL (またはビット単位の演算) と組み合わせることができます。
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1,2); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2,1); var_dump($arr2); ?>ログイン後にコピー
sort() 関数はインデックス関係を維持せず、削除します。配列を元のキー名に置き換え、新しい数値キー名を割り当てます。
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); sort($age); var_dump($age); ?>
出力:
sort() 関数は、値とインデックスの関係がそれほど重要ではない配列に使用できます。 (数値配列) ですが、値とインデックスの関係に焦点を当てた配列は適していません。この時点で、asort() 関数と ksort() 関数を使用する必要があります。
2. asort() 関数を使用しますasort() 関数は、キー値に基づいて連想配列を昇順に並べ替えますが、変更は行いません元の配列内のキー名。
header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); asort($age); var_dump($age); ?>
出力:
3. ksort() 関数を使用する
ksort() 関数は、関連する配列をキー名に従って昇順に並べ替えます。元の配列のキー名は変更しないでください。
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); ksort($age); var_dump($age); ?>
出力:
<?php header("Content-type:text/html;charset=utf-8"); $arr= array("l"=>"lemon", "o"=>"orange", "b"=>"banana", "a"=>"apple"); ksort($arr); var_dump($arr); ?>
出力:
ksort()関数にもパラメータが2つあり、パラメータの値はsort()関数と同じなので参照することができます。
推奨:PHP 面接の質問の概要 (コレクション)>>php ビデオ チュートリアル >>
以上がPHP 配列を学習するためのヒント: 配列関数を使用して配列を昇順に並べ替えます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。