列の値による連想配列の並べ替え
特定の列の値による連想配列の並べ替えは、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 サイトの他の関連記事を参照してください。