Re: [PHP-ES] PDO volver a recorre r un vector después de fetch

[email protected] (Ruben Lacasa)
Newsgroups php.general.es
Organization Enseñalia
Message-ID <[email protected]>
El 02/11/11 12:17, Ricardo Martinez escribió:
> Hola lista!!!
>
> tengo un vector que ya he recorrido:
>
> while($var1 = $var2->fetch())
>
> necesito recorrer de nuevo $var2.
>
> Se me ocurre copiarlo antes usando un bucle...
>
> Pero me gustaría saber si conocéis alguna solución "más elegante" ...
>
> Se que puedo duplicarl ese vector, usando pdo, pero estoy trabajando a 3
> capas, y me resultaría mucho más cómodo poder hacerlo desde la plantilla en
> lugar desde el modelo.
>
> Llevo tiempo pensado en esto y documentandome, pero no encuentro... una
> solución elegante =)
>
> Un saludo a tod@s!!!
>
Buenas Ricardo y lista!!!!
Para mi lo mas sencillo es que en vez de usar el fetch en el while
utilizaría un fetchAll para recoger
todos los resultados de la consulta y luego un foreach, que por defecto
hace una copia del array del array y así en el siguiente foreach
empezarías desde el principio sin necesidad de hacer un reset( $vars )
/
$vars  = $var2->fetchAll(); // Almacenamos el array de todos los
resultados en $vars
foreach ( $vars as $var ) {
    // lo que fuera
}
foreach ( $vars as $var ) {
    // lo que fuera
}
/
Espero que te sirva
Un saludo!!!!

-- 
------------------------------------------------------------------------
Rubén Lacasa Mas - Dpto. Formación
/Zend Certified Engineer PHP 5.3/
Enseñalia

<http://www.ensenalia.com>
signature.asc (application/pgp-signature, 554 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOsS3PAAoJEOuaUAWeB75P3m8IAIOO9GKPf5IN2x0HLClES6SC
m7mwtAdr7sKFj/v3f7wuW6XSyQkmLCXPgKKcCQS3o3aM1P+PuLVrNJaBt0hKOUOu
hevw6Cwn6AJfmATS+evRoLY7+BBya3csnz1okd42CxRaX+365N+xR9DcG9PV+JwZ
F2bZMe0SaIurgHYiWy0cKvC3Y17ty/uZgCqFvWIoPGnXsJyEGXoh/6EhZ9oAuPo2
jiIo4YPibK6bK5ZqMBOpsi/Jj/xSSCjModOSCXH5p4KrdyeiWiCEtujr09Wz5L31
/yWU0tyPd4ndzFLaMHGWaVNBUyJoZDrO+5AXNTDcOGI8ETrlQf4tINEu33OZIbo=
=Ecko
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.