Zend Framework: ¿fetchAll devuelve un error fatal cuando no se devuelven filas?

Sé que cuando intento el uso superior fetchAll y devuelve un error fatal, el motivo es porque no ha devuelto ningún registro en la consulta. Pero mi pregunta es, ¿cómo tratarlo? ¿Cómo puedo saber si la consulta no devolverá ningún registro, por lo que no uso toArray()?

Por ejemplo,

$table = new Application_Model_Proucts();
$products = $table->fetchAll()->toArray();

¿Cómo puedo hacer una verificación de la consulta antes de poner el toArray ¿método?

preguntado el 03 de mayo de 12 a las 15:05

2 Respuestas

Si no hay registros devueltos de fetchAll() entonces no le estás pasando nada toArray(), que es donde se está produciendo el error.

Intente envolver el último pero de su código en una declaración if:

$products = $table->fetchAll();

if(count($products))
{
  $products = $products->toArray();
}

contestado el 03 de mayo de 12 a las 15:05

Gracias hermano, funcionó totalmente, con fetchRow y fetchAll también. - fernando ferrari

envuelva su consulta en una condición y/o arroje una nueva excepción cuando no se cumpla la condición

contestado el 04 de mayo de 12 a las 04:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.