Autor | Zpráva | ||
---|---|---|---|
Pavel015 Profil |
Dobrý večer,
chtěl bych moc poprosit o radu. Mám 3 pole: $nabidky = array("85", "86", "87", "88", "89", "90", "91"); $vybrano = array("0", "2", "0", "0", "8", "0", "0"); $nenulove = array("1", "4"); Uživatel má nějaké nabídky, které z nich si vybere značí pole $vybrano. Ještě se mi podařilo zjistit, jaké pozice jsou nenulové (1,4). Potřeboval bych z toho dostat další pole, do ve které bych měl čísla 86, 89. Nevíte, jak by ten kód měl vypadat? Díky moc. Takto: $novepole = []; for ($i=0; $i<count($nenulove); $i++) { array_push($novepole, $nabidky[$i]); } |
||
Kcko Profil |
#2 · Zasláno: 10. 2. 2018, 20:48:05
Pavel015:
Piš trošku jak člověk, musel jsem si to přečíst 3x, než jsem pochopil co chceš. $novepole = []; foreach ($nenulove as $k => $v) { if (isset($nabidky[$v])) { $novepole[] = $nabidky[$v]; } } print_r($novepole); PS. Víš, že čísla se do apostrofů/uvozovek nedávají? Takhle z toho děláš string. |
||
Keeehi Profil |
#3 · Zasláno: 11. 2. 2018, 02:04:34
Pavel015:
Pokud zachováš původní formát z Procházení pole selectů, pak bude fungovat elegantní $vybrana_mista = array_filter($_GET['vybrana_mista']); Funkce array_filter totiž defaultně z pole odstraní všechny nulové hodnoty. |
||
Časová prodleva: 6 let
|
0