php实战案例记录(13)关键词包含空格的并且搜索条件

要在 PHP 中搜索包含空格的关键词,并使用 MySQL 语句进行查询,你可以使用 MySQL 的 LIKE 运算符和 % 通配符来实现。

MySql拼接语句

php 复制代码
$condition = '';
if (isset($word) && $word != '')
{
    $keyworksqland = '';
    $wordlist = str_replace("+", " ", $word);
    $wordlist = str_replace(" ", " ", $wordlist);
    $wordlistx = explode(" ", $wordlist);
    $condition .= " and ( ";
    for ($k = 0; $k < count($wordlistx); $k++) {
        if ($k > 0) {
            $keyworksqland = " and ";
        }
        $condition .= $keyworksqland . "  name like '%" . addslashes($wordlistx[$k]) . "%'";
    }
    $condition .= " )";
}

mysql运行结果

and ( name like '%源代码%' and name like '%数据%' and name like '%UI%' )


@漏刻有时

相关推荐
程序员二叉8 小时前
【JUC】AQS底层深度拆解|独占/共享模式|队列原理全详解
java·开发语言·面试·juc
踏着七彩祥云的小丑8 小时前
Go 学习第6天:结构体 + 切片 + range遍历
开发语言·学习·golang·go
读书札记20228 小时前
Qt中windeployqt.exe工具的使用:解决使用CMake创建的项目点击exe文件后系统提示0xc000007b的问题
开发语言·qt
故渊at8 小时前
第十二板块:Android 系统启动与初始化 | 第二十九篇:Init 进程、RC 脚本与属性服务(Property Service)
android·linux·内存映射·权限控制·init进程·rc脚本·属性服务
故渊at8 小时前
第十三板块:Android 综合架构与未来演进 | 第三十二篇:Android 内存管理与 LMK 机制的深度剖析
android·架构·内存管理·内存回收·lmk机制·收割算法
故渊at9 小时前
第十一板块:Android 跨进程通信与 Binder 深度剖析 | 第二十七篇:Binder 线程池与死亡通知(Death Recipient)机制
android·binder·线程池·死亡通知·跨进程通讯
xiaoshuaishuai89 小时前
C# 定制化Markdown编辑器
开发语言·c#·编辑器
jushi89999 小时前
FB Neo 街机模拟器全游戏整合版 含25000+街机游戏怀旧复古街机游戏 解压即玩 热门怀旧街机游戏全集安卓+PC电脑版
android·游戏·电脑
DogDaoDao9 小时前
C++核心技术深度剖析:从底层原理到工程实践
开发语言·c++·面试·程序员·指针·虚函数
vensli9 小时前
体验专题——Android 应用瘦身实战
android·网络