2011-01-19 73 views
7

我想下面的分割功能,这是我一直用它来使preg_split ..它有点混乱转换,因为该值会改变不时..PHP的分裂,使preg_split

current code: 
$root_dir = 'www'; 
$current_dir = 'D:/Projects/job.com/www/www/path/source'; 
$array = split('www', 'D:/Projects/job.com/www/www/path/source', 2); 
print_r($array); 



output of the split function: 
Array ([0] => D:/Projects/job.com/ [1] => /www/path/source) 
+1

为什么要使用`preg_split`? – lonesomeday 2011-01-19 12:34:42

+0

是`split`只是一个使用`preg_split`的函数?为什么你不使用爆炸? – RobertPitt 2011-01-19 12:44:59

回答

15

使preg_split()相似,旧的ereg函数split()。你只需要附上正则表达式中/.../像这样:

preg_split('/www/', 'D:/Projects/job.com/www/www/path/source', 2); 

封闭斜杠/这里是真正的正则表达式语法,而不是搜索的字符串中的一部分。如果www分隔符是可变的,则应另外使用preg_quote()作为内部部分。

但请注意,如果您只是查找静态字符串,则不需要正则表达式。在这种情况下,您可以使用explode()非常像您以前使用split():

explode('www', 'D:/Projects/job.com/www/www/path/source', 2);