Salut, je suis en train de compter le nombre de valeurs en double dans un tableau associatif qui ressemble à ceci:Rechercher des valeurs en double dans un tableau associatif et les ajouter à un compte
array(3) { [0]=> array(3) { ["Title"]=> string(25) "hello"
["Price"]=> int(50)
["Count"]=> int(1) }
[1]=> array(3) { ["Title"]=> string(35) "world"
["Price"]=> int(50)
["Count"]=> int(1) }
[2]=> array(3) { ["Title"]=> string(25) "hello"
["Price"]=> int(50)
["Count"]=> int(1) } }
Comme vous pouvez le voir ici là est une valeur dupliquée dans le titre "Title" Je veux les compter et en ajouter un à la partie "Count". J'ai commencé à faire quelque chose comme ceci:
$prodArray = array();
// Add the values to the array if it's the first time it occurs.
if (!in_array($row['prodTitle'], $prodArray["Title"]))
{
array_push($prodArray,
array(Title => $row['prodTitle'],
Price => $row['prodPrice'],
Count => 1)
);
}
else
{
//Add one to the count for the current item.
}
la chose est que je ne peux pas accéder à l'élément « titre » dans le tableau par la fonction in_array. Toutes les suggestions sont les bienvenues.
triez-les, puis exécutez une boucle foreach en comparant une avec la première et en ajoutant 1 à un compteur à chaque fois qu'elle est égale? – iaintunderstand
Avez-vous un exemple de ce à quoi cela ressemblerait? – user1593846
Eh bien, je ne suis pas un expert du tout, mais vous savez qu'il y a des fonctions qui font cela, il n'y a pas besoin d'inventer quoi que ce soit. Voici le lien vers ces fonctions http://php.net/manual/en/array.sorting.php – iaintunderstand