Autor | Zpráva | ||
---|---|---|---|
h4ever Profil * |
#1 · Zasláno: 11. 12. 2011, 15:49:50
Ahoj,
potřeboval bych poradit jak projít prvky pole, aby se odstranily všechny prvky které nesplňují podmínku. Chci aby zůstal jen jeden prvek s konkrétním názvem klíče. |
||
nightfish_ Profil * |
#2 · Zasláno: 11. 12. 2011, 16:08:09
h4ever:
„Chci aby zůstal jen jeden prvek s konkrétním názvem klíče.“ A není lepší vytvořit si nové pole, do kterého jen zkopíruješ prvek s konkrétním názvem klíče? |
||
h4ever Profil * |
#3 · Zasláno: 11. 12. 2011, 16:22:11 · Upravil/a: h4ever
nightfish:
Uvažoval jsem o té možnosti, ale z programátorského hlediska: snažím se ušetřit paměť a čas. Je to sice součást iniciace, nikoliv součást hledací smyčky, ale i tak nevím jestli je správné vytvářet nové pole. Okolnosti jsou takové: Je to pole vícerozměrné, obsahující názvy metod a seznam vlastností. Spustit to chci uvnitř několikánásobné smyčky. A jelikož jedno zdrojové pole už existuje, zdá se mi zvláštní zvyšovat prostředky když je chci snížit. Existuje funkce array_filter ale nevím jestli je to vhodné řešení. Není to něco jako exec() ve smyslu spouštění funkce? teda ne exec, ale eval() |
||
ShiraNai7 Profil |
#4 · Zasláno: 11. 12. 2011, 16:42:23
h4ever:
„Není to něco jako exec() ve smyslu spouštění funkce?“ call_user_func() / call_user_func_array() |
||
h4ever Profil * |
#5 · Zasláno: 11. 12. 2011, 16:48:05
Nakonec jsem se rozhodl to udělat jak říkal nightfish. Je to jednoduší než vytvářet další metodu.
foreach ($this->input[$what][$level]['not'] as $property): $requests =& $this->argLists->argTemp[$level]->$w; foreach ( $requests as $k1 => $v1): echo "$k1 $keyword<br>"; if ($k1==$keyword) { $requests = null; $requests[$k1] = $v1; break; } endforeach; |
||
Časová prodleva: 12 let
|
0