class='pingjiaF'frameborder='0' src='http://www.jb51.net'scrolling='no' >
配列の並べ替え
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); // 配列を定義します
usort ($a,"cmp"); // カスタム関数を使用して配列を並べ替えます
foreach($a as $key=>$value) // をループしますソートされたキーの値のペアを出力します
{
echo "$key:$valuen";
}
/*
注: 2 つの要素の比較結果が同じ場合、ソートされた配列内の順序は定義されません。 PHP 4.0.6 より前では、ユーザー定義関数はこれらの要素の元の順序を保持していました。しかし、4.1.0 で導入された新しい並べ替えアルゴリズムにより、これに対する効率的な解決策が存在しないため、これは当てはまらなくなります。
*/
//配列キー名をソート uksort(array,sorttype)
function cmp($a, $b) //ユーザー定義のコールバック関数
{
if($a==$b) // If 2 つのパラメータは等しい
{
return 0; //Return 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) // 並べ替えられたキーと値のペアを出力するループ
{ // www .jbxue.com
echo "$key:$valuen";
}/*
uksort() 関数は、ユーザー定義の比較関数を使用して配列をキー名で並べ替え、インデックス関係を維持します。
成功した場合は true を返し、そうでない場合は false を返します。
この関数は、並べ替えられる配列を通常とは異なる基準で並べ替える必要がある場合に使用する必要があります。
カスタム関数は、配列内のキー名のペアが入力される 2 つのパラメーターを受け入れる必要があります。比較関数は、最初の引数が 2 番目の引数より小さい、等しい、または大きい場合、それぞれゼロ未満、ゼロに等しい、またはゼロより大きい整数を返す必要があります。
*/
/*
sort() 関数は、指定された配列の値を昇順に並べ替えます。
注: この関数は、配列内のユニットに新しいキー名を割り当てます。元のキー名は削除されます。
成功した場合は true を返し、そうでない場合は false を返します。
*/
$fruits=array("lemon","orange","banana","apple"); //配列を定義する
sort($fruits) //配列を並べ替える
foreach($fruits); as $key=>$val) //配列をソートした後にキーと値のペアをループして出力します
{
echo "$key=$valn" //キーと値のペアを出力します
}