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

來源:互聯網
上載者:User
最近在做項目的時候想起了php的版本比較,查了下百度找到了 version_compare() 函數。

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

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

此函數首先在版本字串裡用一個點 . 替換 _、- 和 +,也會在任意非數字前後插入一個點 .,這樣,類似 '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 開發狀態的版本。

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

'; //本人使用的版本為  5.2.17echo '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的目前的版本為 5.2.17 int(1)bool(false)bool(false)您的PHP版本小於5.3.0,目前的版本為 5.2.17

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

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.