如果您正在嘗試檢查您執行的 PHP 版本是否足夠,不要使用 `strcasecmp` 等函數。PHP 已經有一個 `version_compare` 函數,它專門用於比較 PHP 風格的版本字串。
<?php
if (version_compare(phpversion(), '5.3.10', '<')) {
// php 版本不足
}
?>
(PHP 4, PHP 5, PHP 7, PHP 8)
phpversion — 取得目前的 PHP 版本
extension
一個可選的擴充套件名稱。
以字串形式傳回目前的 PHP 版本。如果為 extension
參數提供一個字串引數,phpversion() 會傳回該擴充套件的版本,如果沒有關聯的版本資訊或擴充套件未啟用,則傳回 false
。
版本 | 說明 |
---|---|
8.0.0 |
extension 現在可以為 null。 |
範例 #1 phpversion() 範例
<?php
// 輸出例如 'Current PHP version: 8.3.12'
echo 'Current PHP version: ' . phpversion();
// 輸出例如 '1.22.3',如果擴充套件未啟用則不輸出任何內容
echo phpversion('zip');
?>
範例 #2 PHP_VERSION_ID
範例和用法
<?php
/**
* PHP_VERSION_ID 定義為一個數字,數字越高,使用的 PHP 版本越新。它的定義如上述表達式所示:
*
* $version_id = $major_version * 10000 + $minor_version * 100 + $release_version;
*
* 現在使用 PHP_VERSION_ID,我們可以檢查此 PHP 版本可能具備的功能,這不需要每次檢查目前 PHP 版本是否可能不支援某個功能時都使用 version_compare()。
*
* 例如,我們可以在這裡定義在 5.2.7 之前的版本中不可用的 PHP_*_VERSION 常數
*/
if (PHP_VERSION_ID < 50207) {
define('PHP_MAJOR_VERSION', $version[0]);
define('PHP_MINOR_VERSION', $version[1]);
define('PHP_RELEASE_VERSION', $version[2]);
// 等等...
}
?>
注意:
此資訊也可在預定義常數
PHP_VERSION
中取得。更多版本資訊可使用PHP_*_VERSION
常數取得。
注意:
某些擴充套件可能會定義自己的版本號。然而,大多數內建擴充套件會使用 PHP 版本作為其版本號。
如果您正在嘗試檢查您執行的 PHP 版本是否足夠,不要使用 `strcasecmp` 等函數。PHP 已經有一個 `version_compare` 函數,它專門用於比較 PHP 風格的版本字串。
<?php
if (version_compare(phpversion(), '5.3.10', '<')) {
// php 版本不足
}
?>
要了解已載入的 {php} 擴充功能及其版本
<?php
foreach (get_loaded_extensions() as $i => $ext)
{
echo $ext .' => '. phpversion($ext). '<br/>';
}
?>