【PHP】拆分关键词 模糊搜索 标题描红

本文将探讨如何在PHP中实现关键词的拆分,进行模糊搜索,并且重点讲解如何在搜索结果中对匹配的关键词进行标题描红,提高用户体验。
摘要由CSDN通过智能技术生成

     //(1)把关键词拆分成一个个汉字
        $str = $keywords;
        $length = mb_strlen($str);
        $tem = [];        
        for ($i = 0; $i < $length; $i++) {
           $tem[] = mb_substr($str, $i, 1);
        }
        //print_r($tem);
        //Array ( [0] => 北 [1] => 京 [2] => 学 [3] => 习 [4] => 好 [5] => 好 [6] => 的 )


     //(2)给关键字加 % 符号,并写成where条件,模糊查询数据
        foreach ($tem as $vo){
            $likes[] = '%'.$vo.'%';
        }
     //print_r($likes);
     //Array ( [0] => %北% [1] => %京% [2] => %学% [3] => %习% [4] => %好% [5] => %好% [6] => %的% )

       $where = [
            ['title','like',$likes,'or']
       ];
       $plist = Db::name('article')->where($where)->field('id,title')->select()->Toarray();
     

  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值