Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mod_重写-拆分任意数量的术语?_Php_Apache_Mod Rewrite - Fatal编程技术网

Php mod_重写-拆分任意数量的术语?

Php mod_重写-拆分任意数量的术语?,php,apache,mod-rewrite,Php,Apache,Mod Rewrite,我正试图编写一个mod_重写规则来重新映射一些友好的URL以进行搜索,而我的正则表达式fu没有那么好…哈哈 基本上,在URL的子域之后,将有一个数量可变的单词(\w),由一个字符(比如+)分隔。允许使用空表达式(即“foo.bar.com”),然后使用类似“foo.bar.com/birds”或“foo.bar.com/birds+cats+fishes”的内容 由此,我们需要获取单词,并将它们作为查询字符串传递。您将如何将任意数量的匹配项拆分,然后将它们传递到我们的PHP页面?现在,如果分隔符

我正试图编写一个mod_重写规则来重新映射一些友好的URL以进行搜索,而我的正则表达式fu没有那么好…哈哈

基本上,在URL的子域之后,将有一个数量可变的单词(\w),由一个字符(比如+)分隔。允许使用空表达式(即“foo.bar.com”),然后使用类似“foo.bar.com/birds”或“foo.bar.com/birds+cats+fishes”的内容

由此,我们需要获取单词,并将它们作为查询字符串传递。您将如何将任意数量的匹配项拆分,然后将它们传递到我们的PHP页面?现在,如果分隔符只是“+”,那么我们可以将它作为一个完整的离散块传递给页面,因为它使用+作为分隔符。然而,我很好奇——如果不是,你会如何分割它?是否可以只使用mod_重写规则?或者你需要用别的东西吗

干杯,
Victor

只要您的分隔符都是非字母字符,您就可以对
([A-Za-z]+)*
(基本上与
(\w+)*
)进行贪婪匹配,这样就可以将所有被中间其他字符分割的单词组合成一组。

将它们分割是什么意思?