ThinkPHP5框架中怎么查询并处理数据
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容主要讲解"ThinkPHP5框架中怎么查询并处理数据",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"ThinkPHP5框架中怎么查询并处理数据"吧!
千家信息网最后更新 2026年11月03日ThinkPHP5框架中怎么查询并处理数据
本篇内容主要讲解"ThinkPHP5框架中怎么查询并处理数据",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"ThinkPHP5框架中怎么查询并处理数据"吧!
在处理数据库查询结果时遇到了些问题,记录下用到过的几种查询方式和结果处理。
1. 查询某条记录
$where=array( "version_id"=>$version_id);$data = model("PackageWhitelist")->where($where)->find();$this->assign("package_id",$package_id);$where=array( "package_id"=>$package_id);$data = model("Package")->where($where)->find();if($data){ $this->assign("target_version",$data['target_version']);}2. 查询某条记录某个字段
$device_number_list = model("PackageWhitelist")->where($where)->field("device_number")->find();$this->assign("device_number",$device_number_list['device_number']);3. 查询多个记录某个字段 , 并处理结果,结果是一个数组集
$where=array( "version_id"=>$version_id );$data = model("PackageWhitelist")->where($where)->field("device_number")->select();$device_number_list='';foreach($data as $val){ $list = $val->toArray(); if($device_number_list){ $device_number_list=$device_number_list.';'.$list["device_number"]; }else{ $device_number_list=$list["device_number"]; }}4. 查询多条记录
$where=array( "version_id"=>$version_id);$data = model("PackageWhitelist")->where($where)->select();$device_number_list='';foreach($data as $val){ $list = $val->toArray(); if($device_number_list){ $device_number_list=$device_number_list.';'.$list["device_number"]; }else{ $device_number_list=$list["device_number"]; }}5. 以页形式查询,并处理结果。
public function index($version_id){ $where=array( "version_id"=>$version_id ); $version_name = model("Version")->where($where)->field("version_name")->find(); $listrows=config("LISTROWS")?config("LISTROWS"):10; $package_lists=model("Package")->where($where)->paginate($listrows); $package_infos = $package_lists->toArray()["data"]; foreach($package_infos as $key=>$value){ $package_infos[$key] = array("source_version" => $version_name["version_name"]) + $package_infos[$key]; }}再来总结一下TP5的三种查询数据库方式
方式一:原生sql查询
代码示例:
方式二:使用查询构建器
代码示例:
where('banner_id','=',$id) 返回查询对象,->select();返回查询结果, * 除了select操作还有 find(返回一条数据) update delete insert * 对应的where 也分三种,1.表达式where('字段名','表达式','查询条件') 2.数组发 3.闭包。 */ // 2.1 表达式法// $result = Db::table('banner_item')// ->where('banner_id','=',$id)// ->select();// return $result; //2.2 闭包法 $result = Db::table('banner_item') ->where(function ($query) use($id){ $query->where('banner_id','=',$id); }) ->select(); return $result; }}方式三:ORM(Object Relation Mapping) 对象关系映射
使用ORM 查询数据库主要区别就是在写模型的继承think\model类,然后控制器就可以使用model的默认方法来获取数据而不是自己再在模型中专门写一个获取方法
代码示例:
model:
where('banner_id','=',$id) 返回查询对象,->select();返回查询结果,// * 除了select操作还有 find(返回一条数据) update delete insert// * 对应的where 也分三种,1.表达式where('字段名','表达式','查询条件') 2.数组发 3.闭包。// *///// // 2.1 表达式法//// $result = Db::table('banner_item')//// ->where('banner_id','=',$id)//// ->select();//// return $result;// //2.2 闭包法// $result = Db::table('banner_item')// ->where(function ($query) use($id){// $query->where('banner_id','=',$id);//// })// ->select();// return $result;//////////// }}controller:
goCheck();// $banner = BannerModel::getBannerByID($id); $banner = BannerModel::get($id); if(!$banner){ throw new BannerMissException(); } return $banner; }}到此,相信大家对"ThinkPHP5框架中怎么查询并处理数据"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
查询
数据
处理
结果
表达式
方式
字段
闭包
框架
代码
对象
数据库
数组
方法
示例
内容
条件
模型
学习
实用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云信互联网科技有限公司
科技股互联网
互联网金融与金融科技
金融科技 互联网金融
上海喔噻互联网科技
奔汉互联网科技
互联网科技网站
互联网 新科技
科技类的互联网平台
丰台科技园 互联网公司
科技赋能互联网健康
北京大学互联网科技怎么样
福建科技产业互联网发展
互联网科技商业
中国互联网十大科技股排名
工业互联网等科技实现智能化赋能
扫呗互联网科技有限公司
西安有哪些互联网高科技企业
互联网界的黑科技
悟空问答互联网科技
新华互联网科技学校
互联网是不是新科技
互联网科技卖菜
互联网金融 科技金融
中国 科技 互联网
互联网科技与大数据专业
广州互联网高科技取餐柜
中国互联网公司的科技投入
互联网科技创新创业项目
科技互联网企业在行动