在度娘中简单的找了下,判断当前PHP的版本是否高于某个版本,或者低于某个版本的方法
显示的结果基本上都是一样的,好吧,要不是我忘记了version_compare()这个函数我才不会去找度娘,果断找以前的代码
php手册中是这么描述 version_compare()函数的:
version_compare() 用于对比两个「PHP 规范化」的版本数字字符串。 这对于编写仅能兼容某些版本 PHP 的程序很有帮助
mixed version_compare ( string $version1
, string $version2
[, string $operator
] )
返回混合型
string $version1 - 版本1 必填
string $version2 - 版本2 必填
string $operator - 理解为运算符吧 选填
也就是 、lt、、 le、>、 gt、>=、 ge、==、 =、eq、 !=、 和 ne。
如果说指定了第三个参数则返回的是 boolean , 如果没有指定第三个参数则返回的情况有下面三种:
第一个版本低于第二个版本的时候 return -1
第一个版本等于第二个版本的时候 return 0
第一个版本小于第二个版本的时候 return 1
<?php header('content-type:text/html;charset=utf-8'); /** * 判断php的版本是否在5.3.0以上 */ echo '<pre class="brush:php;toolbar:false">'; //本人使用的版本为 5.2.17 echo 'PHP的当前版本为 '.PHP_VERSION."\n"; var_dump(version_compare(PHP_VERSION,'5.2.0')); var_dump(version_compare(PHP_VERSION,'5.2.0','=')); var_dump(version_compare(PHP_VERSION,'5.3.0','ge')); if(version_compare(PHP_VERSION,'5.3.0','ge')){ echo '您的PHP版本大于5.3.0,当前版本为 '.PHP_VERSION; }else{ echo '您的PHP版本小于5.3.0,当前版本为 '.PHP_VERSION; }
结果如下:
PHP的当前版本为 <span>5.2</span>.<span>17</span><span> int(</span><span>1</span><span>) bool(</span><span>false</span><span>) bool(</span><span>false</span><span>) 您的PHP版本小于5.</span><span>3.0</span>,当前版本为 <span>5.2</span>.<span>17</span>