好吧,我想就如何以正確的方式編寫高級搜索配置文件提供一些建議。PHP:編碼「高級搜索」最好的方法
「高級」搜索包含:
Gender female/both/male
Search in All/latest profiles 1/2/7/14/32 days ago
Online: Yes(checked)
Age (xx) to (xx) years (xx means you can write e.g 12 and 18)
Cities: all/city1/city2/city3
有很多,你可以挑選標準。
我想知道我應該如何編碼這個最有效的方式,用最少的代碼重複。我應該從用戶選擇的內容構建一個查詢嗎?例如:
$query = "SELECT * FROM users WHERE"
if(!empty($gender){ // if its empty, then the user chose both..
$query .= "gender = $gender";
}
....
或者有沒有更好的解決方案?我認爲這樣做會導致問題,因爲如果用戶不選擇任何性別,而另一個如果$在線(示例)以AND開頭,則將導致在哪裏並且...
請不要使用未初始化的變量,如andArr。另外,我很漂亮,在最後一行的$ andArr之後不應該有任何大括號。編輯。 – phihag 2010-10-02 13:54:13
它只是一個代碼片段。通常我初始化所有變量。 $ andArr = array();會在我的$ andArr [] = ...之前; – ITroubs 2010-10-02 14:04:15
內爆是做什麼的?如果我回聲的字符串,它會是性別= $性別和年齡介於$從和$到? – Johnson 2010-10-02 14:20:05