我正在使用wordpress插件重定向到随机帖子。它允许我根据标签重定向到随机帖子,因此网址可能看起来像
example.com/?random&random_tag_id=100
如果我想找到标记有标签ID 100和101的随机帖子,我会这样做
example.com/?random&random_tag_id=100&random_tag_id=101
但我想找到来自EITHER ID 100或101的随机帖子。我知道&用于'this + this',但是可以通过URL发出'this OR this'请求吗?
感谢您的帮助!
答案 0 :(得分:1)
您可以这样做:
example.com/?random&random_tag_id=100,101,102,103
当你处理这些变量时,你必须做这样的事情:
<?php
$random_tag_ids = explode(',', $_GET['random_tag_id']);
// $random_tag_ids now contains an array of your random tag ids
?>
答案 1 :(得分:0)
您可以将数组传递给查询,如下所示:
example.com/?random&random_tag_id[]=100&random_tag_id[]=101
您将获得$_GET['random_tag_id'] == array(100, 101)
答案 2 :(得分:0)
这样做的问题是你将覆盖PHP中的值。您需要括号表示法将其正确传递为数组
example.com/?random&random_tag_id[]=100&random_tag_id[]=101
当你到达PHP时,你将拥有
echo $_GET['random_tag_id'][0]; //Outputs 100
然后,您可以将您的查询传递到内爆列表
答案 3 :(得分:0)
您误解了GET参数的工作原理。
在查询字符串(?key=a&otherkey=b
)中,&
只是不同键/ var对之间的分隔符。所以该字符串的PHP等价物如下:
$_GET['key'] = 'a';
$_GET['otherkey'] = 'b';
如果在查询字符串中使用相同的键两次,后者将覆盖前者。因此,对于字符串?key=a&key=b
,$_GET['key']
将等于b
。
正如其他人所说,您可以通过逗号分隔列表(即?key=1,2,3,4
)或数组(即?key[]=a&key[]=b
)传递数据。