PHP 配列のソート usort、uksort およびsort 関数の使用法、usortuksort
この記事の例では、PHP 配列ソート関数 usort、uksort、sort 関数の使用法を説明します。参考のためにみんなで共有してください。具体的な使用状況の分析は次のとおりです:
配列を並べ替える: usort() 関数は、ユーザー定義関数を使用して配列を並べ替えます。コード例は次のとおりです。
コードをコピーします コードは次のとおりです:
function cmp($a, $b) //ユーザー定義のコールバック関数
{
if($a==$b) //2 つのパラメータが等しい場合
{
0 を返す //0 を返す
}
Return($a>$b)?-1:1; //最初のパラメータが 2 番目のパラメータより大きい場合は 1 を返し、それ以外の場合は -1 を返します
}
$a=array(3,2,5,6,1); //配列を定義します
usort ($a,"cmp"); // カスタム関数を使用して配列を並べ替えます
foreach($a as $key=>$value) // ソートされたキーと値のペアを出力するループ
{
「$key:$valuen」をエコーします
}
注: 2 つの要素の比較結果が同じである場合、ソートされた配列内の順序は定義されていません。PHP 4.0.6 より前では、ユーザー定義関数はこれらの要素の元の順序を保持しますが、4.1.0 以降ではその順序が維持されます。の新しい並べ替えアルゴリズムでは、効果的な解決策がないため、結果はこのようにはなりません。
配列のキー名を並べ替える uksort(array,sorttype) のコード例は次のとおりです:
コードをコピーします コードは次のとおりです:
function cmp($a, $b) //ユーザー定義のコールバック関数
{
if($a==$b) //2 つのパラメータが等しい場合
{
0 を返す //0 を返す
}
Return($a>$b)?-1:1; //最初のパラメータが 2 番目のパラメータより大きい場合は 1 を返し、それ以外の場合は -1 を返します
}
$a=array(4=>"four",3 =>"three",20 =>"twenty",10=>"ten") //配列を定義します
uksort ($a,"cmp"); // カスタム関数を使用して配列キーを並べ替えます
foreach($a as $key=>$value) // ソートされたキーと値のペアを出力するループ
{
「$key:$valuen」をエコーします
}
uksort() 関数は、ユーザー定義の比較関数を使用して配列をキー名でソートし、成功した場合は true を返し、そうでない場合は false を返します。
並べ替える配列を通常とは異なる基準で並べ替える必要がある場合は、この関数を使用する必要があります。この関数は、配列内のキー名のペアが入力される 2 つのパラメーターを受け入れる必要があります。 1 つのパラメーターが 2 番目のパラメーターより小さい、等しい、または大きい場合、それぞれゼロ未満、ゼロに等しい、またはゼロより大きい整数を返す必要があります。
sort() 関数は、指定された配列の値を昇順に並べ替えます。
注: この関数は配列内のユニットに新しいキー名を割り当てます。成功した場合は true を返し、それ以外の場合は false を返します。コード例は次のとおりです。
コードをコピーします
コードは次のとおりです:$fruits=array("lemon","orange","banana","apple") //配列を定義します
sort($fruits); //配列をソートします
foreach($fruits as $key=>$val) // 配列の並べ替えられたキーと値のペアを出力するループ
{
echo "$key=$valn" // キーと値のペアを出力します
}
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/912674.html
www.bkjia.comtruehttp://www.bkjia.com/PHPjc/912674.html技術記事 PHP 配列ソート usort、uksort、sort 関数の使い方、usortuksort この記事では、PHP 配列ソート usort、uksort、sort 関数の使い方について説明します。参考のためにみんなで共有してください。具体的な利用ポイント…