Aus dem folgenden Array versuche ich, die Menge und den Preis für die Bedingung multiplizieren, dass itemType Zo ist.Multiplizieren Sie zwei Array-Werte basierend auf den Werten der anderen Werte
(
[customer] => 4
[itemNo] => Array
(
[0] => 1
[1] => 2
)
[itemName] => Array
(
[0] => Type A
[1] => Type B
)
[itemType] => Array
(
[0] => Zo
[1] => Ram
)
[quantity] => Array
(
[0] => 2
[1] => 3
)
[price] => Array
(
[0] => 500
[1] => 2000
)
)
Hier ist, was ich bisher versucht habe, aber ohne Erfolg.
$lq = 0;
$total =0;
for ($i=0;$i<count($_REQUEST['price']);$i++) {
if(in_array("Ram", $_REQUEST['itemType'])){
$total += $_REQUEST['price'][$i] * $_REQUEST['quantity'][$i];
}else{
$lq += $_REQUEST['quantity'][$i];
}
}
echo ($total).'<br>';
echo ($lq);
Meine erwartete Ausgabe ist:
$total = 1000;//Quantity x Price
$lq = 3//Quantity only
dies erfüllen immer 'in_array ("Ram", $ _REQUEST [ 'itemType'])', benutzen Sie einfach '==' in jeder Iteration stattdessen, genau wie die Antwort unter – Ghost
@ bma, können Ihre Daten mehrere Elemente vom Typ 'Zo' haben, oder hätte der Eingang nur ein' Zo'? – BeetleJuice
@BeetleJuice '$ _REQUEST' enthält Formulareingabe, daher wählt der Benutzer vermutlich den Typ. – Barmar