[英]Codeigniter Aliase not working in Views
我在codeigniter中写了很多代码,但是我不得不重新构造数据库列前缀,当我使用联接查询在模型查询中联接某些表时,在一个查询中有一些表具有相同的id列,所以我使用了Alias表名称为“ As alias1”,模型成功运行而没有问题
但是当我将$q = $this->db->get()
变量传递给控制器,然后将其传递给我的视图并像这样迭代时:
foreach($q->result() as $res)
echo $res->alias1.id;
php错误,未知$alias1.id
但我为其中一个表声明了alias1
。
有什么问题 ? 谢谢
当您执行->result()
,CI将构建一个对象数组。 您的选择中声明的每一列将是一个对象成员。 但是,别名不会保留。
这意味着SELECT alias.field
将被转换为$obj->field
而不是$obj->alias.field
。
如果您有两个名称相同的字段,请在SELECT
子句中设置一个别名
$this->db->select("alias1.field as myfield, alisas2.field as myotherfield");
然后,您将可以使用$obj->myfield
和$obj->myotherfield
获取它们
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.