To know, what are the {php} extensions loaded & version of extensions :
<?php
foreach (get_loaded_extensions() as $i => $ext)
{
echo $ext .' => '. phpversion($ext). '<br/>';
}
?>
phpversion
(PHP 4, PHP 5)
phpversion — Выдает текущую версию PHP
Описание
string phpversion
([ string
$extension
] )Возвращает строку с номером версии текущего PHP-анализатора или расширения.
Список параметров
-
extension -
Необязательное имя расширения.
Возвращаемые значения
Если задан аргумент extension,
phpversion() вернет версию этого расширения или
FALSE, если информации о версии нет или расширение в данный момент
не подключено.
Примеры
Пример #1 Пример использования phpversion()
<?php
// Выводит строку типа 'Текущая версия PHP: 4.1.1'
echo 'Текущая версия PHP: ' . phpversion();
// Выводит строку типа '2.0' или ничего, если расширение не подключено
echo phpversion('tidy');
?>
Пример #2 Пример использования PHP_VERSION_ID
<?php
// PHP_VERSION_ID доступна в версиях PHP 5.2.7 и выше. Если
// наша версия ниже, можно ее сэмулировать
if (!defined('PHP_VERSION_ID')) {
$version = explode('.', PHP_VERSION);
define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
}
// PHP_VERSION_ID определена как число. Чем больше число, тем новее
// PHP. Эта константа задается по той же схеме, что приведена выше:
//
// $version_id = $major_version * 10000 + $minor_version * 100 + $release_version;
//
// Теперь с PHP_VERSION_ID можно проверять, какой функционал есть в
// текущей версии PHP. Не обязательно пользоваться version_compare()
// каждый раз, когда требуется проверить, поддерживает ли PHP нужную
// нам функцию.
//
// Например, мы можем задать значения констант PHP_VERSION_*,
// которые недоступны в версиях ранее 5.2.7
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_VERSION
- version_compare() - Сравнивает две "стандартизованные" строки с номером версии
- phpinfo() - Выводит информацию о текущей конфигурации PHP
- phpcredits() - Выводит список разработчиков PHP
- php_logo_guid() - Получение guid логотипа
- zend_version() - Получает версию Zend движка
pavankumar at tutorvista dot com ¶
2 years ago
bitworks at web dot de ¶
3 years ago
to realize if the actual version ist newer than '5.2.10'
simply use:
<?php
if (strnatcmp(phpversion(),'5.2.10') >= 0)
{
# equal or newer
}
else
{
# not sufficiant
}
?>
dmitry DOT seredinov AT gmail DOT com ¶
4 years ago
To simple receive a major PHP version value (e.g., 5.2), you can use next:
<?php
// Output below will looks like '5.2', depends to your version
echo floatval(phpversion());
?>
cHao ¶
16 days ago
If you're trying to check whether the version of PHP you're running on is sufficient, don't screw around with `strcasecmp` etc. PHP already has a `version_compare` function, and it's specifically made to compare PHP-style version strings.
<?php
if (version_compare(phpversion(), '5.3.10', '<')) {
// php version isn't high enough
}
?>
Sam Yong - hellclanner at live dot com ¶
3 years ago
Take note that if you pass phpversion() with an empty string, eg.
<?php
echo phpversion('');
?>
It will not return anything, since it cannot find an extension with the name string(0) ''.
pl DOT baasch AT skycube DOT net ¶
4 years ago
In a addition to phpversion,..
if you've got a system like ubuntu or some else, you get
<?php
echo phpversion(); // 5.2.4-2ubuntu5.2
?>
To fix this, use the following:
<?php
echo substr(phpversion(),0,strpos(phpversion(), '-'));
?>
