ÔõÑùÔÚ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}
µÇ¼ºó¸´ÖÆ
ÔÚÉÏÃæµÄ´úÂëÖУ¬ÎÒÃÇÊ×ÏÈÅжÏËÑË÷Ч¹ûÊÇ·ñΪ¿Õ£¬ÈôÊDz»Îª¿Õ£¬ÔòʹÓÃforeachÑ»·Õ¹Ê¾Ã¿Ò»¸öЧ¹û£»ÈôÊÇΪ¿Õ£¬ÔòÌáÐÑÓû§Ã»ÓÐËÑË÷Ч¹û¡£
ͨ¹ýÒÔÉϵÄÒªÁ죬ÎÒÃǾͿÉÒÔÔÚthinkphp¿ò¼ÜÖÐʵÏÖ¶à¸ö×ֶεÄÄ£ºýÅÌÎʹ¦Ð§¡£Ð»Ð»¸÷È˵ÄÔĶÁ£¬Ï£ÍûÄܶÔÏÖʵ¿ª·¢ÓÐËù×ÊÖú¡£
ÒÔÉϾÍÊÇÔõÑùÔÚthinkphp¿ò¼ÜÖÐʵÏÖÄ£ºýÅÌÎʶà¸ö×ֶεÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡