PHP のカスタム並べ替えルールに従って配列を並べ替え、元のキー名を保持します

王林
リリース: 2024-05-04 09:27:01
オリジナル
691 人が閲覧しました

PHP では、uasort() 関数を使用して、元のキー名を保持しながらカスタムの並べ替えルールに従って配列を並べ替えます。カスタム比較関数は、2 つの要素を入力として受け取り、整数を返す関数です。負の数値は前者が後者より小さいことを意味し、ゼロはそれらが等しいことを意味し、正の数値は前者が後者より大きいことを意味します。

PHP 中按自定义排序规则对数组进行排序,保留原始键名

PHP でカスタム並べ替えルールに従って配列を並べ替え、元のキー名を保持する方法

PHP で、カスタム並べ替えルールによる配列 配列を並べ替えるための照合ルールを定義することは、一般的なニーズです。たとえば、製品名、価格、またはその他のカスタム基準で製品リストを並べ替えることができます。

PHP には組み込み関数 uasort() が用意されており、これを使用すると、元のキー名を保持しながらカスタム比較関数を使用して配列を並べ替えることができます。

構文

uasort ( array &$array , callable $value_compare_func ) : bool
ログイン後にコピー
  • $array - 並べ替える配列
  • $value_compare_func - カスタム比較関数。正の数、負の数、またはゼロを返します。

カスタム比較関数

カスタム比較関数は、配列要素を比較するために使用される関数です。 2 つのパラメータ $a$b を入力として受け取り、次のルールに従って整数を返します:

  • if $a is less $b よりも大きい場合は、負の数が返されます。
  • $a$b と等しい場合、ゼロが返されます。
  • $a$b より大きい場合は、正の数を返します。

#実際的なケース #次に、2 つの文字列の長さを比較するカスタム比較関数の例を示します:

<?php
function compare_string_length($a, $b) {
    return strlen($a) - strlen($b);
}
ログイン後にコピー

配列の並べ替え

次に、カスタムの並べ替えルールに従って配列を並べ替えましょう。次の例では、文字列の長さで最小から最大の順に配列を並べ替えます:

<?php
$fruits = array("apple", "banana", "orange", "grapefruit");

uasort($fruits, "compare_string_length");

print_r($fruits);
ログイン後にコピー

出力:

Array
(
    [grapefruit] => grapefruit
    [orange] => orange
    [apple] => apple
    [banana] => banana
)
ログイン後にコピー

ご覧のとおり、配列は文字列の長さで最小から最大の順に並べ替えられます。元のキー名を保持します。

以上がPHP のカスタム並べ替えルールに従って配列を並べ替え、元のキー名を保持しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!