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-----