Hirdetés

Új hozzászólás Aktív témák

  • Lacces

    őstag

    Sziasztok!

    each() + tömbhöz kéne magyarázat.

    Adott a következő kód:

    reset($array)
    while ( list($termek, $ar) = each($array))

    És a reset() és each() és tömb kapcsolatához kellene magyarázat.
    Azt írják, hogy azért kell a reset(), mert a tömb az each ha egyszer végig ment a tömbön, és ha újra meghívom akkor a reset() nélkül nem megy végig a tömbön.

    Kérdésem, miért nem megy végig a tömbön mégegyszer? (hogy kell ezt elképzelni)

    - egyik, azért mert az each() megjegyzi a $array tömböt, és ha egyszer lefutatta, akkor nem hajlandó többé.
    - másik, mert a $array-nek van valami indexmutatója, amit az each() a tömbvégéhez visz, és ezt a mutatót kell ismét az elejére vinni a reset()-el... Ezt így magamtól találtam ki., és a php.net manulon és ilyet olvasok ki az angol szövegből.

    Ezek szerint ha a második feltevésem igaz, akkor ez a tömb pointer(mutató) manipulálható?

    Meg ha már ennél a témánál tartok:

    a reset() az each előtt vagy utána érdemes meghívni?

    Másik kérdés:

    a foreach vagy a fentebb említett while ciklusos megoldás a gyorsabb?

    pl.: foreach( $array as $kulcs => $ertek)
    echo...

Új hozzászólás Aktív témák