php报错 Function split() is deprecated

PHP与SEO 思享 57浏览
摘要:
php升级到5.3后,程序会报错函数split()被弃用。由于种种原因,新版本不支持拆分功能。在php中,重用不推荐使用的函数会报告一个错误,必须纠正。看第一个参数。如果第一个参数不是正则表达式,split改为explode如果是正则表达式,split改为preg_split。因此,下面列出了不推荐的功能和建议替换的功能。详情见:PHP:。regex是不需要的,但是只要你想快速拆分一个固定的字符串,explode()可以代替使用。

php升级为5.3后,程序会报 Function split() is deprecated 的错误。

这是因为种种原因(主要是关于正则的原因,具体见后),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实现代码

我们知道主动推送有助于搜索引擎抓取和收录网站内容,wordpress或者主流CMS其实已经集成了推送功能。但是如果我们要定期归还,而不是只在发布的时候推一次。这个功能可以通过结合PHP和Pagoda Panel的预定任务来实现。$api = '百度站......

PHP报错Warning:file_get_contents():SSL operation failed with code 1

今天用在线界面验证百度真假蜘蛛,发现报道有误。错误提示显示SSL操作失败,代码为1。我在网上找到了解决方案,分享给大家参考。警告:file_get_contents():无法在/xxx/xxx.php的第31行启用加密。ip=220.181.108.......

PHP空间绑定多个域名搭建不同单页站点

这些限制只有一个根目录。如果你想建立不同的网站,你只能把二级目录。但如果是单页,可以用php绑定多个域名,让域名跳转到不同的单页,实现批量建站。如果使用表头跳转,URL也会跳转,而且require类似于导入模板,不会跳转。...