split和explode的区别
split看起来貌似和explode没有什么区别,而且功能也都一样
但是,split是用正则表达式进行分割,而explode是用字符串进行分割,相对来讲,explode用起来更快一些.
首先来看下两个方法的定义:
函数原型:array split (string $pattern, string $string [, int $limit])
函数原型:array explode ( string $separator, string $string [, int $limit])
第一个参数string $pattern和string $separator,$pattern说明是正则字符串,$separator说明是普通字符串.
所以如果想要用的分割字符是正则表达式中的特殊字符,要先将其转义.
示例:
$test1 = end(split('.','abc.txt'));
echo $test1;//no output
正确的做法是:
$test1 = end(split('\.','abc.txt'));
echo $test1;//output txt
原因:'.'是正则表达式中的关键字,所以split无效,而explode无影响.

浙公网安备 33010602011771号