搜索
首页php教程php手册thinkphp实现like模糊查询实例,thinkphp模糊查询

thinkphp实现like模糊查询实例,thinkphp模糊查询

本文实例讲述了thinkphp实现like模糊查询的方法,分享给大家供大家参考。具体实现方法如下:

目前使用thinkphp框架进行项目开发的人越来越多了,由于其封装性较好,导致了很多纯PHP开发的部分不易上手,本文实例即以like模糊查询为例对此加以说明。

这里主要通过举例来说明用法:

ThinkPHP可以支持直接使用字符串作为查询条件,但是大多数情况推荐使用索引数组或者对象来作为查询条件,因为会更加安全。

一、使用字符串作为查询条件

这是最传统的方式,但是安全性不高,
例如:

复制代码 代码如下:

$User = M("User"); // 实例化User对象
$User->where('type=1 AND status=1')->select();


最后生成的SQL语句是

复制代码 代码如下:

SELECT * FROM think_user WHERE type=1 AND status=1

如果进行多字段查询,那么字段之间的默认逻辑关系是 逻辑与 AND,但是用下面的规则可以更改默认的逻辑判断,通过使用 _logic 定义查询逻辑:

复制代码 代码如下:

$User = M("User"); // 实例化User对象
$condition['name'] = 'thinkphp';
$condition['account'] = 'thinkphp';
$condition['_logic'] = 'OR';
// 把查询条件传入查询方法
$User->where($condition)->select();


最后生成的SQL语句是

复制代码 代码如下:

SELECT * FROM think_user WHERE `name`='thinkphp' OR `account`='thinkphp'

二、数组方式作为查询条件

讲了这么多了like查询怎么实现呢,下面看

复制代码 代码如下:

$userForm=M('user');
$where['name']=array('like','jb51%');
$userForm->where($where)->select();


这里的like查询即为:

复制代码 代码如下:

name like 'jb51%'

查询语句:

复制代码 代码如下:

$where['name']=array('like',array('%jb51%','%.com'),'OR');


这里的like查询即为:

复制代码 代码如下:

name like '%jb51%' or name like '%.com'

查询语句:

复制代码 代码如下:

$where['name']=array(array('like','%a%'),array('like','%b%'),array('like','%c%'),'jb51','or');


这里的like查询即为:

复制代码 代码如下:

(`name` LIKE '%a%') OR (`name` LIKE '%b%') OR (`name` LIKE '%c%') OR (`name` = 'jb51')

查询语句:

复制代码 代码如下:

$where['_string']='(name like "%jb51%")  OR (title like "%jb51")';


这里的like查询即为:

复制代码 代码如下:

name like '%jb51%' or title like '%jb51'

希望本文所述对大家的PHP程序设计有所帮助。

赵桐正讲的thinkphp中SQL模糊查询时%{$_POST['username']}%,为何有{}?

变量前后有字符的话,要加上 {} 来区分,不然系统会默认的将$ 后面所有的字符都当成变量的名字
 

谁给我看看我用thinkphp的实现like查询数据库,怎不好使,什地方出错了

public function serCon() { $search = $_GET['wd']; $where['title'] = array('like',"%$search%"); $db = M('ThemeCards')->where($where)->find(); print_r($db); }"%$search%"这里不能用单引号,单引号的话变量会被当成字符串,不能正确解析;
where条件中如楼下所说,需要整个$where变量;
p函数?这里返回值是数组类型,需要print_r,如果是自己封装的打印数组的函数的话这个可以忽略。

 

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境