怎样在thinkphp框架中实现模糊盘问多个字段
在开发web应用时,经常需要使用模糊盘问来举行搜索功效的实现。在使用thinkphp框架时,可以很是利便地实现模糊盘问。本文将先容怎样在thinkphp框架中实现模糊盘问多个字段。
首先,我们需要在模子中界说一个获取模糊盘问效果的要领。在要领中,我们可以使用thinkphp自带的模糊盘问参数%来举行模糊盘问。详细代码如下:
public function getFuzzySearchResult($keyword){ $result = $this->where('title', 'like', '%'.$keyword.'%') //在title字段中举行模糊盘问 ->whereOr('content', 'like', '%'.$keyword.'%') //在content字段中举行模糊盘问 ->select(); return $result; }
登录后复制
在上面的代码中,我们使用了where和whereOr两个盘问条件。其中,where是指盘问指定字段与指定值相等的效果,而whereOr是指盘问指定字段与指定值相等的效果或者指定字段与指定值相等的效果。因此,在上面的代码中,我们可以在title与content两个字段中举行模糊盘问,并将效果荟萃并返回。
接下来,我们在控制器中挪用该要领,并将盘问效果转达给视图举行展示。详细代码如下:
public function fuzzySearch(){ $keyword = input('keyword'); //获取搜索要害字 $model = new Article(); //实例化模子 $result = $model->getFuzzySearchResult($keyword); //获取模糊盘问效果 $this->assign('result', $result); //将效果转达给视图 return $this->fetch('search_result'); //跳转到展示页面 }
登录后复制
在上面的代码中,我们首先获取搜索要害字,并实例化一个模子。然后挪用模子中界说的getFuzzySearchResult要领获取模糊盘问效果。最后,将效果转达给视图,并跳转到展示页面。
连忙学习“PHP免费学习条记(深入)”;
最后,我们在视图中展示模糊盘问效果。详细代码如下:
{if $result} {foreach $result as $item} <div> <div>{$item.title}</div> <div>{$item.content}</div> </div> {/foreach} {else} <div>没有搜索效果哦~</div> {/if}
登录后复制
在上面的代码中,我们首先判断搜索效果是否为空,若是不为空,则使用foreach循环展示每一个效果;若是为空,则提醒用户没有搜索效果。
通过以上的要领,我们就可以在thinkphp框架中实现多个字段的模糊盘问功效。谢谢各人的阅读,希望能对现实开发有所资助。
以上就是怎样在thinkphp框架中实现模糊盘问多个字段的详细内容,更多请关注本网内其它相关文章!
免责说明:以上展示内容泉源于相助媒体、企业机构、网友提供或网络网络整理,版权争议与本站无关,文章涉及看法与看法不代表GA黄金甲滤油机网官方态度,请读者仅做参考。本文接待转载,转载请说明来由。若您以为本文侵占了您的版权信息,或您发明该内容有任何涉及有违公德、冒犯执法等违法信息,请您连忙联系GA黄金甲实时修正或删除。