sort()
関数と rsort()
関数: 文法規則:
bool sort(array &array [,int sort_flags] bool rsort(array &array [.int_sort_flags]
パラメーター:
最初のパラメータはソートされた配列オブジェクトです。
2 番目のパラメータは選択できるオプションの値です。
SORT_REGULAR: これはデフォルト値であり、ソート用の配列の要素タイプを自動的に識別します。
SORT_NUMERIC: 配列要素のソートに使用されます。
SORT_STRING: 文字列のソートに使用されます。
SORT_LOCALE_STRING: 現在のロケール設定に従って要素を文字列として比較します。
例:
$a=array(4,7,9,1); sort($a); pirnt_r($a); rsort($a); print_r($a);
定義: ksort ()
この関数は、キー名に従って配列を小さいものから大きいものに並べ替えます。 krsort()
ksort()
関数とは異なり、ソート後の配列値は元のキーが保持されます。
例
$data= array(5=>"five",8=>"eight",1=>"one",7=>"seven"); ksrot($data); print_r($data); krsot($data); print_r($data);
定義: asort()
小さいものから大きいものへ/ arsort()
大きいものから小さいものまで、この関数を使用して並べ替えます。元のキー名は無視され、連続番号を使用して配列の添字を再インデックスします
例:
$data=array("a"=>1,"b"=>2,"c"=>3); asort($data); print_r($data); arsort($data); print_r($data);
Definition : 計算ルールの代わりに認識を使用する非常に特殊な並べ替え方法です。この機能は自然並べ替え方法と呼ばれます。つまり、1 から 9 までの数字、a から z までの文字で、短い方が与えられます。優先度。
例:
$data=array("file1.txt","file11.txt","file111.txt"); natsort($data);//普通自然排序 natcasesort($data);//忽略大小写
文法規則:
bool usort(array &array ,callback cmp_function) bool uasort(array &array,callback cmp_function) bool uksort(array &array,callback cmp_function)
説明: カスタム コールバック関数にはそれぞれ 2 つのパラメーターが必要です配列の 2 つの連続する要素。最初のパラメータが 2 番目のパラメータより小さい、大きい、等しいと比較すると、それぞれ 0、1、-1 が返されます。
例:
$data= array("ab","abc","a","ac","abcd"); usrot($data,"mysortByLen"); function mysortByLen($one,$two){ if(strlen($one)== strlen($two)){ return 0; }else{ return (strlen($one)>strlen($two))?1:-1; }
定義: array_multisort()
関数は、複数の配列をソートするか、特定の次元または複数の次元に従って多次元配列をソートします。
bool array_multisort(array array1 [,mixed arg,[,array ....]])
例:
$data=array( array("id"=>1,"name"=>4), array("id"=>1,"name"=>2), array("id"=>2,"name"=>3) ); foreach($data as $key=>$value){ $ids[$key]=$value["id"]; $names[$key]=$value["name"] } array_multisort($data,$ids,$names); print_r($data);
出力結果:
array( array("id"=>1,"name"=>2), array("id"=>1,"name"=>4), array("id"=>2,"name"=>3) );
推奨: "PHP ビデオ チュートリアル"
以上がPHP における一般的な配列ソート方法のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。