首頁 >後端開發 >php教程 >php中explode()函數與split()函數的差別

php中explode()函數與split()函數的差別

怪我咯
怪我咯原創
2017-07-07 10:02:091575瀏覽

今天在使用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有效。

以上是php中explode()函數與split()函數的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn