當前位置: 首頁>>代碼示例>>PHP>>正文


PHP SearchEngine::prepareWords方法代碼示例

本文整理匯總了PHP中SearchEngine::prepareWords方法的典型用法代碼示例。如果您正苦於以下問題:PHP SearchEngine::prepareWords方法的具體用法?PHP SearchEngine::prepareWords怎麽用?PHP SearchEngine::prepareWords使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在SearchEngine的用法示例。


在下文中一共展示了SearchEngine::prepareWords方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: getQueryChannels

	static function getQueryChannels($words){

		$user=$_SESSION['user'];
		$_anon=($user->isAnon())?'true':'false';

		$words=SearchEngine::prepareWords($words);

		$ORDERBY='S.haslogo desc, S.qt_followers desc';

		$query = "SELECT *,((CASE haslogo WHEN 'true' THEN 1 ELSE 0 END)*100+qt_followers*random()) as QUERY_rank FROM vw_channel as S WHERE (1=1";
		for ($i=0;$i<sizeof($words);$i++){
			switch ($words[$i]){
				case '[mychannels]':
					if (!$user->isAnon())
						$query.=" AND userid='{$user->getId()}'";
					break;
				case '[signedchannels]':
					$query.=" AND S.id in (SELECT channelid from follow_channel_user WHERE userid='{$user->getId()}' and anon='{$_anon}')";
					break;
				case '[suggestchannels]':
					$_anon= ($user->isAnon())?'true':'false';
					$addwhere='';if (!($user->isAnon())) $addwhere.=" and userid!='{$user->getId()}'";
					$query.=" AND S.id not in (select channelid from follow_channel_user where userid='{$user->getId()}' and anon='{$_anon}') {$addwhere} ";
					$ORDERBY='QUERY_rank desc';
					break;
				default:
					$query.=" AND (lower(S.pp_name) like lower('%".$words[$i]."%') OR lower(S.pp_description) like lower('%".$words[$i]."%') )";
					break;
			}
		}

		$query.=") ORDER BY {$ORDERBY}";
		return $query;
	}
開發者ID:rczeus,項目名稱:Rapid-Coffee,代碼行數:34,代碼來源:SearchEngine.php


注:本文中的SearchEngine::prepareWords方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。