ThinkPHP where方法介绍

发布时间 - 2020-04-02 00:00:00    点击率:

ThinkPHP where()

thinkphp where()方法是 model 类内置方法,用于设置数据库查询或者更新、删除等操作条件。

where 方法支持以字符串、数组和对象方式来设置条件,该方法不能独立使用,必须与 select()、find()、delete() 等数据操作方法搭配使用。

字符串方式

字符串方式条件即以字符串的方式将条件作为 where() 方法的参数,例子:

$Dao = M("User");
$List = $Dao->where('uid<10 AND email="Jack@163.com"')->find();

实际执行的 SQL 为:

SELECT * FROM user WHERE uid<10 AND email="Jack@163.com" LIMIT 1

字符串方式设定的条件即为实际 SQL 执行的条件,也是最接近原生 SQL 的方式,ThinkPHP 不会对条件做任何(类型上的)检查。

数组方式

在大多数情况下推荐使用索引数组或者对象来作为查询条件,因为这样会更加安全,详细参见:《ThinkPHP 类型检测》。

使用数组方式的 where 条件例子:

$Dao = M("User");
// 构建查询数组
$condition['uid'] = array('elt',10);
$condition['email'] = "Jack@163.com";
$List = $Dao->where($condition)->find();

这个例子跟上面使用字符串方式的例子执行效果是一样的。

使用对象

where 方法也可以使用对象来设置查询或操作条件,可以使用任何对象。以 stdClass 内置对象为例:

$Dao = M("User");
// 定义查询条件
$condition = new stdClass(); 
$condition->uid = array('elt',10);
$condition->email = "Jack@163.com";
$List = $Dao->where($condition)->find();

使用对象方式和使用数组方式的条件效果是相同的,并且是可以互换的。

推荐教程:thinkphp教程


# thinkphp  # sql  # select  # 字符串  # delete  # 对象  # 数据库  # 可以使用  # 推荐使用  # 会对  # 为例  # 即为  # 即以  # 操作方法  # 数据库查询  # 在大多数情况下  # 是一样的 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现API版本控制_Laravel版本化API设计方案  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  Laravel模型关联查询教程_Laravel Eloquent一对多关联写法  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  html如何与html链接_实现多个HTML页面互相链接【互相】  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  Linux后台任务运行方法_nohup与&使用技巧【技巧】  如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)  如何挑选优质建站一级代理提升网站排名?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  Laravel Docker环境搭建教程_Laravel Sail使用指南  Laravel安装步骤详细教程_Laravel环境搭建指南  Laravel如何创建自定义中间件?(Middleware代码示例)  Laravel如何处理CORS跨域请求?(配置示例)  js实现获取鼠标当前的位置  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  创业网站制作流程,创业网站可靠吗?  Laravel如何处理表单验证?(Requests代码示例)  javascript中的try catch异常捕获机制用法分析  Laravel如何与Pusher实现实时通信?(WebSocket示例)  Python文件操作最佳实践_稳定性说明【指导】  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel如何使用Sanctum进行API认证?(SPA实战)  php485函数参数是什么意思_php485各参数详细说明【介绍】  Linux系统命令中tree命令详解  黑客如何利用漏洞与弱口令入侵网站服务器?  进行网站优化必须要坚持的四大原则  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  做企业网站制作流程,企业网站制作基本流程有哪些?  如何用好域名打造高点击率的自主建站?  如何在搬瓦工VPS快速搭建网站?  网站建设整体流程解析,建站其实很容易!  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  如何在宝塔面板中修改默认建站目录?  微信小程序 wx.uploadFile无法上传解决办法  Laravel如何自定义错误页面(404, 500)?(代码示例)  如何用狗爹虚拟主机快速搭建网站?  5种Android数据存储方式汇总  如何在Windows 2008云服务器安全搭建网站?