在使用zend框架连接表之后,它只显示一个表字段

时间:2011-03-18 15:03:36

标签: join zend-framework field show

我有2个表product_categoryproduct_sub_category

字段的名称相同(id,name,explain,priority)

product_sub_category的{​​{1}}表的外键为product_category

以下代码我看到的是product_category_id字段

product_category

$select = $this->select("t1.* , t2.*") ->setIntegrityCheck(false) ->from(array("t1"=>$this->_name)) ->joinInner(array("t2"=>'product_category'), 't2.id = t1.product_category_id') ->order(array('t1.priority')); $res = $this->fetchAll($select); return $res; 变量应为字符串$this->_name

为什么我看不到两个表中的所有字段?

1 个答案:

答案 0 :(得分:1)

MySQL将返回具有相同名称的字段,因此当ZF使用名称作为索引将它们转换为数组时,后者将覆盖第一个。你需要给它们别名:

$this->select("t1.name AS category_name, t1.explain AS category_explain, t2.name AS subcategory_name")

等等。