[Php-it] Mi spiegate questa sintassi?

Cristiano Verondini cverondini at deis.unibo.it
Mon May 8 10:46:56 CEST 2006


> while( list(, $rule) = each($this->rules) ) {
> }

    la each() scandisce l'array restituendo di volta in volta un array di 
due elementi (la coppia chiave - valore) che vengono, grazie a list(), il 
primo buttato via, ed il secondo (il valore) assegnato alla variabile $rule. 
Poi viene eseguito il corpo del while, tutto questo finché ho elementi 
nell'array.

    E' un classico esempio di cattiva programmazione, legato anche alla 
carenza che le vecchie versioni di PHP hanno per usare gli array 
associativi; per fortuna nelle versioni recenti di PHP puoi usare:

        foreach ($this->rules as $rule) { ... }

    Che, come vedi, è molto più chiaro.

        Cris

-- 
Cristiano Verondini
http://noway.ing.unibo.it  ---   [ICQ: 114 190] 




More information about the Php-it mailing list