Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

Vytažení dat z foreach loopu

Sashaa
verified
rating uzivatele
(18 hodnocení)
4. 10. 2022 13:17:25
Zdravím, dokázal by někdo poradit, jak bych mohl vytáhnout data z foreach loopu?
Jedná se o zobrazování ceny jednotlivých produktu v nákupním košíku. Můj aktuální kod funguje, ale zobrazuje se vždy jen cena prvního produktu... u dalšího produktu se též zobrazuje cena z prvního produktu...
Nevím tedy jak mám vytáhnout informace z foreach, aby se zobrazovali ceny správně ke každému produktu.
Zde je kod:
$kosik_obsah = json_decode($cookie_obsah, true,  JSON_UNESCAPED_UNICODE);
foreach($kosik_obsah as $vyber => $polozka){
$polozka_cena = $kosik_obsah * $polozka; 
$pocet_ks[] = $polozka_cena; //toto je cena jednotlivého produktu
}
$data = array(
        'cena_polozka'  => reset($pocet_ks)
// zkoušel jsem taky jiné metody jako current($pocet_ks)
);
echo json_encode($data); //potřebují to mít v json kvuli ajax funkci.
4. 10. 2022 13:17:25
https://webtrh.cz/diskuse/vytazeni-dat-z-foreach-loopu/#reply1507795
wt_kaspy
verified
rating uzivatele
(4 hodnocení)
5. 10. 2022 07:03:46
Postačí se například zeptat strýčka Googla:
https://stackoverflow.com/questions/32794570/access-variable-outside-foreach-loop-php
Běžně v programovacích jazycích, kdyz definujete nějakou proměnnou uvnitř for loopu, tak je platná pouze pro tu danou iteraci. Tudíž je nutné nejdříve definovat danou proměnnou před loopem a pak až do takto předem definované proměnné zapisovat uvnitř loopu data.
5. 10. 2022 07:03:46
https://webtrh.cz/diskuse/vytazeni-dat-z-foreach-loopu/#reply1507794
Ve foreach si vytvoříte pole cen $pocet_ks a funkcí reset() pak vždy vyberete první položku.
Tzn. podle potřeby buď vracet rovnou celé pole $pocet_ks nebo rozšířit původní data například takto:
6. 10. 2022 14:35:35
https://webtrh.cz/diskuse/vytazeni-dat-z-foreach-loopu/#reply1507793
Pro odpověď se přihlašte.
Přihlásit