php版本比較函數version_compare()

巴扎黑
發布: 2023-03-01 09:08:02
原創
4041 人瀏覽過

php中比較php版本,一般用version_compare()函數。
用途:比較兩個「PHP標準化」版本號字串。
語法:version_compare ( string $version1 , string $version2 [, string $operator ] )
具體說明:version_compare() 比較兩個「PHP 標準化」版本號字串。如果您想編寫僅在某些版本的 PHP 上運行的程序,這非常有用。

此函數首先用點取代 _、- 和 +。 在版本字串中,也插入點。 任何非數字之前和之後,例如“4.3.2RC1”變為“4.3.2.RC.1”。然後它會像使用explode('.', $ver) 一樣分割結果。然後從左到右開始比較各個部分。如果某個部分包含特殊版本字串,則按以下順序處理這些字串:在此清單中找不到的任何字串

   其中一個第三可選參數是比較符:

如果您指定第三個可選運算符參數,您可以測試特定關係。可能的運算子分別為:、gt、>=、ge、==、=、eq、!=、、ne。

此參數是區分大小寫,因此值應為小寫。

   回傳值:

預設情況下,version_compare() 如果第一個版本低於第二個版本,則傳回 -1;如果相等,則傳回 0;如果第二個版本較低,則傳回 1。


當使用可選的運算符參數時,如果關係是運算符指定的關係,函數將傳回 TRUE,否則傳回 FALSE。

    從下面的例子,就可以很好地說明 version_compare 的方式:

<?php
if (version_compare(PHP_VERSION, &#39;6.0.0&#39;) >= 0) {
    echo &#39;I am at least PHP version 6.0.0, my version: &#39; . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, &#39;5.3.0&#39;) >= 0) {
    echo &#39;I am at least PHP version 5.3.0, my version: &#39; . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, &#39;5.0.0&#39;, &#39;>=&#39;)) {
    echo &#39;I am using PHP 5, my version: &#39; . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, &#39;5.0.0&#39;, &#39;<&#39;)) {
    echo &#39;I am using PHP 4, my version: &#39; . PHP_VERSION . "\n";
}
?>
登入後複製

最近在nagios的圖表監控插件pnp安裝中遇到一個錯誤提示:Kohana需要PHP 5.2或更新版本。查看頁面原始碼,發現如下語句:
version_compare(PHP_VERSION, '5.2', '彩虹版本不滿足就退出。

    strcmp()的字串比較函數,也可以進行比較,但像下面這樣,就會出現錯誤:
4.1.10與4.1 .2比較
strcmp(“4.1.10”,“4.1.2”) ; 回傳會-1 錯誤
version_compare(“4.1.10”.“4.1.2”); 就會回傳1 正確

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!