2012-05-03 4 views
0

위로 가기 시도했을 때 fetchAll 치명적인 오류가 반환됩니다. 이유는 쿼리에 레코드가 반환되지 않았기 때문입니다. 하지만 제 질문은 그것을 어떻게 대하는 것입니까? 쿼리가 레코드를 반환하지 않을 경우 어떻게 알 수 있습니까? toArray()을 사용하지 않으시겠습니까? 나는 toArray 방법을 넣어 전에 예를 들어 Zend Framework - fetchAll은 반환 된 행이 없을 때 치명적인 오류를 반환합니다.

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

어떻게 쿼리의 검증을 할 수 있습니까?

답변

2

fetchAll()에서 반환 된 레코드가 없으면 오류가 발생하는 곳인 toArray()에 아무 것도 전달하지 않습니다.

은 if 문에 마지막으로 코드의 포장보십시오 :

$products = $table->fetchAll(); 

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

이 형제 감사 충족되지 않을 때 새로운 예외를 던져 fetchRow 및 fetchAll과 함께 완전히 작동합니다. –

1

이 상태에서 쿼리를 포장 및/또는 조건이