Zend Framework 라이브러리에 대한 활성 레코드 패턴 (RoR/Cake와 유사)을 만들고 있습니다. 내 질문은 : 선택 개체가 테이블에 대한 별칭을 사용하고 있는지 여부를 어떻게 알 수 있습니까?Zend_Db_Table_Select에서 테이블 별칭 가져 오기
$select->from(array("c" => "categories"));
대
$select->from("categories");
내가 자동으로 행의 관계를 얻을에 가입하고 이것 저것 추가 추가하는 "가져 오기"기능이 통과 ... 난 일부 사용자 지정 SQL을 추가 할 ; 사용자가 "보낸 사람"방법을 사용하는 방법에 따라 "c.id"또는 "categories.id"
는 내가 배열로 데이터로부터 얻을
$parts = $select->getPart(Zend_Db_Select::FROM);
을 사용할 수 있습니다 알고, 테이블 이름 또는 별칭 말했다 배열의 "슬롯"0 것 같다. 테이블 이름 또는 별칭이 항상 슬롯 0에 있습니까? 즉, 나는 다음을 신뢰할 수있게 사용할 수 있습니다 :
$tableNameOrAlias = $parts[0];
죄송합니다. :)
여기에 "슬롯"이라고 부르는 적절한 이름은 _index_입니다. 배열 [0]은 인덱스 0이고, 배열 [ 'c']는 인덱스 'c'입니다. – Fractalizer