配列を並べ替える: usort() 関数は、ユーザー定義関数を使用して配列を並べ替えます。コード例は次のとおりです。
function cmp($a, $b) //ユーザー定義のコールバック関数
{
if($a ==$b) // 2 つのパラメータが等しい場合
{
return 0; // 0 を返す
}
return($a>$b)?-1:1; /最初のパラメータが 2 番目のパラメータより大きい場合は 1 が返され、それ以外の場合は -1 が返されます
}
$a=array(3,2,5,6,1); カスタム関数を使用してarray
foreach($a as $key=>$value) // ソートされたキーと値のペアを出力するループ
{
echo "$key:$valuen";
注: 2 つの要素の比較結果は同じであり、ソートされた配列内の順序は定義されていません。PHP 4.0.6 より前では、ユーザー定義関数はこれらの要素の元の順序を保持しますが、4.1 以降、新しいソート アルゴリズムが導入されました。これに対する効果的な解決策がないため、結果はこのようにはなりません。
配列キー名 uksort(array, sorttype) をソートします。コード例は次のとおりです。
function cmp($a , $b) ) //ユーザー定義のコールバック関数
{
if($a==$b) //2 つのパラメータが等しい場合
{ //Return 0
}
return ($ a>$b)?-1:1; //最初のパラメータが 2 番目のパラメータより大きい場合は 1 を返し、それ以外の場合は -1 を返します
}
$a=array(4=>"four",3 = >"three",20 =>"twenty",10=>"ten"); //配列を定義します
uksort ($a,"cmp"); // カスタム関数を使用して配列を並べ替えますキー名 Sorting
foreach($a as $key=>$value) // ソートされたキーと値のペアを出力するループ
{//
echo "$key:$valuen"
; uksort() この関数は、ユーザー定義の比較関数を使用して配列をキー名でソートし、成功した場合は true を返し、それ以外の場合は
ソートされる配列をソートする必要がある場合は false を返します。この関数を使用するには、カスタム関数は 2 つのパラメーターを受け入れる必要があります。これらのパラメーターには、配列内のキー名のペアが入力されます。最初のパラメーターが小さい場合、比較関数は 0 より小さい値を返す必要があります。 2 番目のパラメータより大きい、0 に等しい、または 0 より大きい整数
関数は、指定された配列の値を昇順に並べ替えます。新しいキー名を配列内のユニットに割り当てます。成功した場合は true を返し、それ以外の場合は false を返します。コード例は次のとおりです。
$fruits=array("lemon") ,"orange","banana","apple"); // 配列
sort($fruits) ;//
;