PHP 5.3.0 後 不建議使用 split() 的替代方式

PHP 的 split() 非常方便, 但是 PHP 5.3.0 後, 不建議繼續使用 split(), 在使用上會出現警告訊息.

split() 不建議使用的原因

PHP 5.3.0 之後的 regex, 希望使用 PCRE 的規格, POSIX Regex 都不建議使用了(統一 Regex, 避免規格太多?).

所以下述是不建議使用的 Function (POSIX), 與建議替換成的 Function (PCRE) 列表, 詳可見: PHP: Differences from POSIX regex

  • POSIX → PCRE
  • ereg_replace() → preg_replace()
  • ereg() → preg_match()
  • eregi_replace() → preg_replace()
  • eregi() → preg_match()
  • split() → preg_split()
  • spliti() → preg_split()
  • sql_regcase() → No equivalent

PHP split() 替代方案

  • 需要 regex 的 split, 可用 preg_split() 代替
  • 不需要 regex, 只要要快速分割固定的字串, 可用 explode() 代替. (速度會比需要 regex 的快很多)

關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Programming。將永久鏈結加入書籤。

PHP 5.3.0 後 不建議使用 split() 的替代方式 有 2 則回應

  1. 風痕影 說道:

    唔...替代方案裡的 explode()
    寫成 explide() 了耶(汗

  2. Tsung 說道:

    感謝提醒, 已修正. 🙂

發表迴響