PHP版本如何编号?

时间:2012-01-03 14:33:19

标签: php

我希望在我的服务器上升级WordPress。 WordPress 3.2 requires PHP 5.2.4 or greater。我的服务器运行PHP 5.2.17。看release history on php.net,我看到了:

  1. 5.2.4于2007年8月30日发布
  2. 5.2.17
  3. 没有列表
  4. 5.2.16于2010年12月16日发布
  5. 有几个版本的下达订单:5.2.13,5.3.2,5.2.14,5.3.3,5.2.15
  6. 两个问题:

    • 这个编号系统的逻辑是什么?
    • PHP 5.2.17比5.2.4“更大”吗?

3 个答案:

答案 0 :(得分:4)

简而言之,

  • 5.3.x > 5.2.y
  • 5.2.(z+1) > 5.2.(z)

您还可以期待5.2和5.3的定期维护版本。这就是为什么您可以看到5.2.x版本之后出现的5.3.y版本。

希望有所帮助,

答案 1 :(得分:2)

版本字符串中的最后一个数字(所以416等)适用于小错误修正或快速安全补丁等次要版本。中间数字用于包含许多新功能,修复错误,安全补丁等的更重要的版本。剩下的5用于大量发布,可能是整个重写(不太可能)的结果,或者是那么大的。

你说PHP 5.2.17比5.2.4更新是正确的。常识表明17大于4。如果你在5.2.17安装上安装Wordpress,你会没事的。

答案 2 :(得分:2)

5.2和5.3分支中的最新版本列在http://www.php.net/downloads.php上,这是列出5.2.17的地方。 PHP使用通用的"change significance"系统:[major]。[minor]。[maintenance]。更具体地说,PHP有自己的版本比较功能:version_compare()

它的工作原理如下:

  

该函数首先用点替换_, - 和+。在版本字符串中也插入点。在任何非数字之前和之后,例如'4.3.2RC1'变为'4.3.2.RC.1'。然后它会分割结果,就像你使用explode('。',$ ver)一样。然后它比较从左到右开始的部分。如果某个部分包含特殊版本字符串,则按以下顺序处理这些字符串:此列表中未找到的任何字符串< dev< alpha = a< beta = b< RC = rc< #< pl = p。这样,不仅可以比较具有不同级别的版本(如“4.1”和“4.1.2”),还可以比较任何包含开发状态的PHP特定版本。