這是因為種種原因(主要是關於正則的原因,具體見後),split這個函數在新版本不支援了。
在php中,再使用deprecated的函數會報錯,必須改掉。(java裡deprecated的函數只是給警告,還可以繼續用)
改為什麼呢? 看第一個引數,如果第一個引數不是正規表示式,split改為 explode;如果是正規表示式,split改為preg_split。
explode會比以前快很多,因為以前要考慮正則,explode不考慮正則。
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
* 需要 regex 的 split, 可用 preg_split() 代替
* 不需要 regex, 只要要快速分割固定的字串, 可用 explode() 代替. (速度會比需要 regex 的快很多)
推薦:《PHP教學》
以上就是如何解決php Function split() is deprecated 的問題的詳細內容,更多請關注TW511.COM其它相關文章!