首頁  >  文章  >  後端開發  >  PHP 版本比較函數 version_compare() 函數

PHP 版本比較函數 version_compare() 函數

WBOY
WBOY原創
2016-08-08 09:33:141541瀏覽

最近在做專案的時候想起了php的版本比較,查了下百度找到了 version_compare() 函數。

php手冊中是這樣描述 version_compare()函數的:

version_compare() 用來對比兩個「PHP 規範化」的版本數字字串。 這對於編寫僅能相容於某些版本 PHP 的程式很有幫助

此函數首先在版本字串裡用一個點. 替換_、- 和+,也會在任意非數字前後插入一個點.,這樣,類似'4.3.2RC1' 將會變成'4.3.2.RC .1'。 接下來它會分割結果,就像你使用 explode('.', $ver) 那樣。 然後它會從左往右對比各個部分。 如果某部分包含了特定的版本字串,將會用以下順序處理: 在清單中找不到的任意字串

mixed version_compare ( string $version1 , string $ 回傳混合型 string $version1 - 版本1 必填 string $version2 - 版本2 必填

string $operator - 理解為運算子吧 選填 

也就是 

lt

、 

le>、 gt>=、  、  != 和 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>

 

以上就介紹了PHP 版本比較函數 version_compare() 函數,包含了PHP 版本比較,version_compare方面的內容,希望對PHP教程有興趣的朋友有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn