PHPのnatcasesort()関数の使い方|大文字小文字を区別しない自然順ソート
PHPのnatcasesort()関数は、大文字と小文字を区別しない「自然順(natural order)」アルゴリズムを使用して配列をソートします。通常のソートでは「Rank10」が「Rank2」よりも先に配置されますが、自然順アルゴリズムでは人間にとって直感的な順序で要素が並べ替えられます。
注意:この関数は大文字と小文字を区別しません。また、キーと値の関連付けを保持したままソートを行う点も特徴です。
構文
natcasesort(arr)
パラメータ
arr − ソート対象となる配列を指定します。
戻り値
natcasesort()関数は、ソートが成功した場合にはTRUEを、失敗した場合にはFALSEを返します。
使用例
以下に、natcasesort()関数を使用した具体的なコード例を示します。
<?php
$stu_rank = array("Rank10","Rank2","rank3","rank1","Rank7","rank4");
natcasesort($stu_rank);
print_r($stu_rank);
?>実行結果
次の出力を見ると、大文字と小文字が混在しているにもかかわらず、区別されずに正しくソートされていることが確認できます。
Array ( [3] => rank1 [1] => Rank2 [2] => rank3 [5] => rank4 [4] => Rank7 [0] => Rank10 )
このように、数字を含む文字列でも「rank1」「Rank2」「rank3」という具合に、人間が読んで自然だと感じる順序で並び替えられます。大文字小文字を厳密に区別したい場合は、natsort()関数を使用してください。
-
PHPのlog()関数とは?自然対数の計算方法と使い方を解説
定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l
-
PHPのlcg_value()関数とは?乱数生成の基本と使い方を解説
lcg_value()関数の定義と使い方lcg_value()関数は、0から1までの範囲でランダムな数値(浮動小数点数)を生成するPHP組み込み関数です。「LCG」とは「線形合同法(Linear Congruential Generator)」の略称です。この手法は、不連続な区分線形方程式を用いて擬似乱数列を計算するアルゴリズムで、擬似乱数生成アルゴリズムの中でも最も古くから知られているものの一つです。構文lcg_value ( void ) : floatパラメータこの関数は引数を受け取りません。戻り値lcg_value()関数は、0.0以上1.0以下の範囲にある擬似乱数のfloat値を返し