我正在PHP中進行搜索,並且需要搜索一個或多個變量可能值的特定字段。例如。我需要顯示「黑色」和「紅色」頭髮的人的結果(我的變量是「頭髮」)。在這個時候,我只知道如何用一個價值來做到這一點。例如。如何在URL中使用OR?
...search.php&hair=black
謝謝!
我正在PHP中進行搜索,並且需要搜索一個或多個變量可能值的特定字段。例如。我需要顯示「黑色」和「紅色」頭髮的人的結果(我的變量是「頭髮」)。在這個時候,我只知道如何用一個價值來做到這一點。例如。如何在URL中使用OR?
...search.php&hair=black
謝謝!
您可以通過使用方括號([]
)轉$_GET['hair']
到一個數組:
search.php?hair[]=black&hair[]=red
$_GET['hair']
值:
[hair] => Array
(
[0] => black
[1] => red
)
謝謝你,這個伎倆! :) – typologist 2011-12-25 14:06:18
我會做這樣的事情:
http://link/search.php?hair[]=black&hair[]=red
然後,您可以使用檢索數組:
$_GET['hair']
我希望這有助於!
查詢字符串通常是按照&符號或分號分隔的鍵值對的列表,但您可以使用任何您想要的格式,但必須解析非標準格式。請注意,&號不等於「和」,它們僅僅是分隔符。相應地,在查詢字符串中沒有任何含義是「或」。
如何像:
/search.php?hair=black,red,green
然後在劇本,你這樣做:
$terms = explode(',', $_GET['hair']);
// Now $terms is an array containing the values: black, red, and green.
// You can do your search based on those terms.
這也是一個好主意,我會嘗試一下。謝謝! – typologist 2011-12-25 14:11:38
在標題,你寫「或」,但在問題中,你寫「和」。這是什麼,有黑色和紅色頭髮,或黑色或紅色頭髮的人? – outis 2011-12-25 13:56:49