Je travaille avec un tableau PHP indexé qui ressemble à cette structure:Récupérer valeur de clé basée sur une autre valeur clé au sein de la même ligne d'un tableau PHP
$result = Array(
[0] => Array([storepickup_id] => 3[sku] => 691294[inventory] => 33[reserve] =>)
[1] => Array([storepickup_id] => 3[sku] => 692284[inventory] => 3[reserve] =>)
[2] => Array([storepickup_id] => 3[sku] => 692289[inventory] => 4[reserve] =>)
[3] => Array([storepickup_id] => 3[sku] => 693510[inventory] => 8[reserve] =>)
[4] => Array([storepickup_id] => 3[sku] => 150893[inventory] => 2[reserve] =>)
[5] => Array([storepickup_id] => 3[sku] => 150906[inventory] => 4[reserve] =>)
)
Je tente de filtrer le tableau ci-dessus un préconstruit pOUR CHAQUE déclaration qui ressemble à ceci:
<?php foreach ($_productCollection as $_product): ?>
<?php
echo "SKU: " . $_product->getSku();
echo "INVENTORY: " . array_column($result, 'inventory', $_product->getSku());
<?php endforeach; ?>
donc, si _Product-getSku $() donne 691294, je voudrais récupérer la valeur correspondante de « inventaire » du même indice/ligne du tableau PHP .
La colonne array_ ci-dessus dans FOR EACH ne fonctionnait pas. J'ai aussi essayé une fonction basée sur array_filter qui a échoué à donner des résultats appropriés:
<?php foreach ($_productCollection as $_product): ?>
<?php
function my_function($item_values)
{
if ($item_values = $_product->getSku())
{
return true;
}
return false;
}
$sku = $_product->getSku();
print_r(array_filter($sku,"my_function"));
?>
<?php endforeach; ?>
Y at-il une meilleure approche lorsque l'on travaille avec des tableaux multidimensionnels tels que ci-dessus? Merci d'avance.
@AbraCadaver Oui, mais dans ce cas, la fonction array_column est calle d pour chaque itération. –
Bon point ..... :-) – AbraCadaver