[英]How to get data from database that result as an array in model codeigniter
我想在codeigniter MODEL中进行如下查询:
$caldata = array (
15 => 'yes',
17 => 'no'
);
那有可能吗?
请注意:15,17和yes,no在同一数据库表中。
您可以使用result_array()函数,以便获得如下内容:
$query = $this->db->select('id,answer')->from('users')->get();
$result = $query->result_array();
print_r($result);
之后,您就有了数组,可以使字段的$key => $value
关系
没有核心帮助程序功能可在CI中实现您想要的功能。 但是您可以创建自己的辅助函数:
function pluck($arr = [], $val = '', $key = '')
{
// val - label for value in array
// key - label for key in array
$result = [];
foreach ($arr as $value) {
if(!empty($key)){
$result[$value[$key]] = $value[$val];
}else{
$result[] = $value[$val];
}
}
return $result;
}
经过长时间的搜索,我找到了答案。 示例方法:
$query = $this->db->select('start_date, class')->from('event')->like('start_date', "$year-$month", 'after')->get();
$datavariable = $query->result();
$caldata = array();
foreach($datavariable as $row){
$caldata[substr($row->start_date,8,2)] = $row->class;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.