使用 codeigniter 活动记录获取单个字段输出的值
Posted
技术标签:
【中文标题】使用 codeigniter 活动记录获取单个字段输出的值【英文标题】:getting the value of the single field output using the codeigniter active record 【发布时间】:2013-06-01 23:45:54 【问题描述】:以下函数应该从数据库中读取给定资产代码的名称。但它会触发错误:“尝试获取非对象的属性”
function sban_name($asset)
$this->db->select('name');
$this->db->from('asset_types');
$this->db->where('code',$asset);
return $this->db->get()->result()->row('name');
我只想将资产的名称返回给控制器!非常感谢您的帮助!
【问题讨论】:
【参考方案1】:使用row()
点赞,
return $this->db->get()->row()->name;
【讨论】:
我需要模型中的这些数据,这是我的查询 $query = $this->db->query("SELECT * FROM users WHERE useremail = '$email' AND usertype = 1 AND usertype = 2")->row()->useremail ;【参考方案2】:对单行使用row()
,对多行使用result()
。
【讨论】:
【参考方案3】:这样做,asset_types 是你的表名
function sban_name($asset)
$this->db->select('name');
$this->db->from('asset_types');
$this->db->where('code',$asset);
return $this->db->get('asset_types');
在你的控制器中访问它就像
$result=$this->modelname->sban_name('$asset')->row();
$name=$result->name;
【讨论】:
【参考方案4】:我认为检查数据库中是否存在满足条件的记录很重要。模型代码:
function sban_name($asset)
$this->db->select('name');
$this->db->from('asset_types');
$this->db->where('code',$asset);
$row = $this->db->get()->row();
if (isset($row))
return $row->name;
else
return false;
只需像这样从控制器调用函数:
$response = $this->model_name->sban_name($asset)
【讨论】:
【参考方案5】:试试这个 block 代码,我已经检查过并且工作正常:
function sban_name($asset)
$this->db->select('name');
$this->db->from('asset_types');
$this->db->where('code', $asset);
return $this->db->get()->row()->name;
【讨论】:
以上是关于使用 codeigniter 活动记录获取单个字段输出的值的主要内容,如果未能解决你的问题,请参考以下文章
codeigniter 活动记录获取查询和不带 LIMIT 子句的查询