Tri d'un tableau associatif par valeur de colonne
Étant donné un tableau de tableaux associatifs, la tâche consiste à trier les éléments en fonction d'une colonne spécifique valeur. Par exemple, considérons le tableau suivant :
$inventory = array( array("type" => "fruit", "price" => 3.50), array("type" => "milk", "price" => 2.90), array("type" => "pork", "price" => 5.43), );
L'objectif est de trier $inventaire par la colonne "prix", ce qui donne :
$inventory = array( array("type" => "pork", "price" => 5.43), array("type" => "fruit", "price" => 3.50), array("type" => "milk", "price" => 2.90), );
Solution utilisant array_multisort( )
Pour y parvenir, nous pouvons utiliser la fonction array_multisort(). Il permet de trier plusieurs tableaux sur plusieurs colonnes.
Voici un exemple :
$price = array(); foreach ($inventory as $key => $row) { $price[$key] = $row['price']; } array_multisort($price, SORT_DESC, $inventory);
Alternativement, en utilisant array_column() (disponible depuis PHP 5.5.0) :
$price = array_column($inventory, 'price'); array_multisort($price, SORT_DESC, $inventory);
En triant le tableau $price, nous trions indirectement $inventory puisqu'ils partagent les mêmes clés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!