對於初學者來說,掌握PHP中常用函數的用法,是其繼續學習的基礎。今天我們就為大家詳細介紹有關說明
array split ( string $pattern, string $string [, int $limit] )
提示
preg_split() 函數使用了 Perl 兼容正則表達式語法,通常是比PHP函數split()更快的替代方案。如果不需要正則表達式的威力,則使用 explode() 更快,這樣就不會招致正則表達式引擎的浪費。
本函數返回一個字符串數組,每個單元為 string 經區分大小寫的正則表達式 pattern 作為邊界分割出的子串。如果設定了 limit,則返回的數組最多包含 limit 個單元,而其中最後一個單元包含了 string 中剩余的所有部分。如果出錯,則 split() 返回 FALSE。
將 /etc/passwd 中的前四個字段分割出來:
例 1839. PHP函數split()例子
- <?php
- list($user, $pass, $uid, $gid, $extra) =
- split (":", $passwd_line, 5);
- ?>
如果字符串中有 n 個與 pattern 匹配的項目,則返回的數組將包含 n+1 個單元。例如,如果沒有找到 pattern,則會返回一個只有一個單元的數組。當然,如果 string 為空也是這樣。
解析可能用斜線,點,或橫線分割的日期:
例 1840. PHP函數split()例子
- <?php
- // 分隔符可以是斜線,點,或橫線
- $date = "04/30/1973";
- list($month, $day, $year) = split ('[/.-]', $date);
- echo "Month: $month; Day: $day; Year: $year<br />n";
- ?>
想仿效 Perl 中類似的 @chars = split('', $str) 行為,請參考 preg_split() 或 str_split() 函數中的例子。
注意 pattern 是一個正則表達式。如果想要用的分割字符是正則表達式中的特殊字符,要先將其轉義。如果覺得PHP函數split()(或其它任何 regex 函數)行為古怪的話,請閱讀包含在 PHP 發行包中 regex/ 子目錄下的 regex.7 文件。該文件是手冊頁面格式,可以用類似 man /usr/local/src/regex/regex.7 的命令來閱讀