2009-10-26 3 views
0

배열을 사용하여 Zend DB 테이블에 대한 매개 변수를 설정하려고합니다. 나는 문서의 예를 따르도록 노력하고 있어요 :Zend DB Table Where 절

$select = $table->select()->where(array('bug_status = ?' => 'NEW')); 

내가 Zend_Db_Table을 상속하는 클래스를 가지고 예처럼 선택하려합니다 :

$select = $this->select()->where(array('FirstName = ?' => 'Ryan')); 

그러나 나는 "라는 오류가 발생하고 SQLSTATE [42S22] : C 럼을 찾을 수 없음 : 1054 'where 절'에서 알 수없는 컬럼 'Array'. ". 따라서 배열을 배열로 인식하지 않고이를 열 이름으로 사용하려고합니다.

여기에 무슨 일이 일어나고 있는지 또는 어떻게 얻을 수 있는지에 대한 아이디어 배열을 수락 할 곳은 어디입니까? 감사!

답변

4

정확한 구문은 where('FirstName = ?', 'Ryan')입니다. 소스 코드에서 배열 버전을 찾을 수 없으므로 문서의 "버그"라고 말하고 싶습니다.

+0

http://framework.zend.com/issues/browse/ZF-8155 –

+1

맞습니다. 그러나 $ this -> _ where ($ select, $ where);를 사용하여 where 배열을 적용 할 수 있습니다. 그것은 '잘못된'예제와 같은 어레이 설정을 취하여 올바르게 적용합니다 (추신 : 2 년 지연에 대해 유감 :-) – Ryan