php中explode与split函数的区别
Jun 08, 2016 pm 05:23 PM在一个层面来看php中的explode与split函数没什么区别都用来把字符以什么分开成数组了,但仔细看一下explode与split还是有区别的,下面我来给大家介绍一下。
首先来看下两个方法的定义:
函数原型:array split (string $pattern, string $string [, int $limit])
函数原型:array explode ( string $separator, string $string [, int $limit])
初看没有啥差别,貌似功能都一样。我就犯了这个错误。 请注意两个函数的第一个参数string $pattern和string separator,一个是$pattern说明是正则字符串,一个是$separator是普通字符串。 看下面的代码:
代码如下 | 复制代码 |
$test = end(explode('.', 'abc.txt')); echo $test;//output txt 换成: $test1 = end(split('.','abc.txt')); echo $test1;//no output |
用split的正确做法是:加转义符号
$test1 = end(split('.','abc.txt'));
echo $test1;//output txt
分析:"." 符号是正则表达式的关键字所以split无效,而explode有效。
解析可能用斜线,点,或横线分割的日期:
例子 2. split() 例子
// 分隔符可以是斜线,点,或横线
$date = "04/30/1973 ";
list($month, $day, $year) = split ( '[/.-] ', $date);
echo "Month: $month; Day: $day; Year: $year
n ";
?>
想仿效 Perl 中类似的 @chars = split( ' ', $str) 行为,请参考 preg_split() 函数中的例子。
注意 pattern 是一个正则表达式。如果想要用的分割字符是正则表达式中的特殊字符,要先将其转义。如果觉得 split()(或其它任何 regex 函数)行为古怪的话,请阅读包含在 PHP 发行包中 regex/ 子目录下的 regex.7 文件。该文件是手册页面格式

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Huawei Watch GT 5 smartwatch gets update with new features

Tekken\'s Colonel Sanders dream fried by KFC

First look: Leaked unboxing video of upcoming Anker Zolo 4-port 140W wall charger with display

Samsung Galaxy Z Fold Special Edition revealed to land in late October as conflicting name emerges

New Xiaomi Mijia Graphene Oil Heater with HyperOS arrives

Cybertruck FSD reviews praise quick lane switching and full-screen visualizations

Garmin releases Adventure Racing activity improvements for multiple smartwatches via new update

Manjaro 24.1 \'Xahea\' launches with KDE Plasma 6.1.5, VirtualBox 7.1, and more
