ホームページ >バックエンド開発 >PHPチュートリアル >PHP で連想配列の配列を列の値で並べ替えるにはどうすればよいですか?

PHP で連想配列の配列を列の値で並べ替えるにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-19 02:13:08195ブラウズ

How to Sort an Array of Associative Arrays in PHP by Column Value?

列の値による連想配列の並べ替え

特定の列の値による連想配列の並べ替えは、array_multisort を使用して実現できます。 () 関数。この関数は複数の配列を受け取り、1 つ以上の列で並べ替えます。

在庫リストを表す次の配列を考えてみましょう:

$inventory = array(
    array("type" => "fruit", "price" => 3.50),
    array("type" => "milk", "price" => 2.90),
    array("type" => "pork", "price" => 5.43)
);

この配列を「価格」列で並べ替えるには、次のようにします。次のコードを使用できます:

$price = array();
foreach ($inventory as $key => $row) {
    $price[$key] = $row['price'];
}
array_multisort($price, SORT_DESC, $inventory);

PHP 5.5.0 以降では、次のコードを使用して上記のコードを簡略化できます。 array_column() 関数:

$price = array_column($inventory, 'price');
array_multisort($price, SORT_DESC, $inventory);

これは $inventory 配列を "price" 列で降順に並べ替えます。結果の配列は次のようになります:

$inventory = array(
    array("type" => "pork", "price" => 5.43),
    array("type" => "fruit", "price" => 3.50),
    array("type" => "milk", "price" => 2.90)
);

以上がPHP で連想配列の配列を列の値で並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。