PHP 5.2 与 PHP 5.3+ 的几处差异

栏目: PHP · 发布时间: 5年前

内容简介:修改一个我之前开发的一个 Discuz 插件对于 PHP 5.2 的支持(当时插件开发环境是 PHP 5.6.37),发现以下几处需要注意的地方:花了一下午才弄好,也是填坑填大发了,之前还是有蛮多地方欠考虑(毕竟没有专门做 PHP 这块,缺乏这些细节的了解(真是个好借口))。另外还想吐槽一下:

修改一个我之前开发的一个 Discuz 插件对于 PHP 5.2 的支持(当时插件开发环境是 PHP 5.6.37),发现以下几处需要注意的地方:

  1. PHP 5.2 不支持 $this::$staticVar ,需改为: self::$staticVar
  2. nowdoc 需要 5.3+,需改为 heredoc 或普通的字符串定义;
  3. __DIR__ 需要 5.3+,需改为: dirname(__FILE__)
  4. 声明类变量为 heredoc 需要 5.3+,需改为普通的字符串定义;
  5. PHP5.2 不支持 $a = $a ?: $b; ,需改为: $a = $a ? $a : $b;
  6. 没有 SQLite3 类,可以用一堆 sqlite_opensqlite_query 之类的函数,或 SQLiteDatabase 替代。
  7. error_reporting 时,没有 E_DEPRECATEDE_USER_DEPRECATED
    参考:http://php.net/manual/zh/errorfunc.constants.php

花了一下午才弄好,也是填坑填大发了,之前还是有蛮多地方欠考虑(毕竟没有专门做 PHP 这块,缺乏这些细节的了解(真是个好借口))。

另外还想吐槽一下:

  1. PHP:虽然我依旧觉得 PHP 很优秀,新手友好,但和 Python 比,还是不如,编程体验差很多。
  2. Discuz:应该被淘汰了吧,为什么还有这么多人用,真是的!

以上所述就是小编给大家介绍的《PHP 5.2 与 PHP 5.3+ 的几处差异》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

.NET设计规范

.NET设计规范

克瓦林纳 / 葛子昴 / 人民邮电出版社 / 2006-7 / 49.00元

本书为框架设计师和广大开发人员设计高质量的软件提供了权威的指南。书中介绍了在设计框架时的最佳实践,提供了自顶向下的规范,其中所描述的规范普遍适用于规模不同、可重用程度不同的框架和软件。这些规范历经.net框架三个版本的长期开发,凝聚了数千名开发人员的经验和智慧。微软的各开发组正在使用这些规范开发下一代影响世界的软件产品。. 本书适用于框架设计师以及相关的专业技术人员,也适用于高等院校相关专业......一起来看看 《.NET设计规范》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器