Get os version with php

Get os version with php

Эти константы объявляются ядром PHP и охватывают PHP, Zend engine и SAPI-модули.

PHP_VERSION ( string ) Текущая версия PHP в виде строки в формате «major.minor.release[extra]». PHP_MAJOR_VERSION ( int ) Текущая «основная» (major) версия PHP в виде целого числа (например, int(5) для версии «5.2.7-extra»). PHP_MINOR_VERSION ( int ) Текущая «промежуточная» (minor) версия PHP в виде целого числа (например, int(2) для версии «5.2.7-extra»). PHP_RELEASE_VERSION ( int ) Текущая «релиз»-версия (release) PHP в виде целого числа (например, int(7) для версии «5.2.7-extra»). PHP_VERSION_ID ( int ) Текущая версия PHP в виде целого числа, её удобно использовать при сравнениях версий (например, int(50207) для версии «5.2.7-extra»). PHP_EXTRA_VERSION ( string ) Текущая «экстра»-версия PHP в виде строки (например, ‘-extra’ для версии «5.2.7-extra»). Обычно используется в различных дистрибутивах для индикации версий пакетов. PHP_ZTS ( int ) PHP_DEBUG ( int ) PHP_MAXPATHLEN ( int ) Максимальная длина файловых имён (включая путь), поддерживаемая данной сборкой PHP. PHP_OS ( string ) Операционная система, под которую собирался PHP. PHP_OS_FAMILY ( string ) Семейство операционных систем, для которых собран PHP. Любая из ‘Windows’ , ‘BSD’ , ‘Darwin’ , ‘Solaris’ , ‘Linux’ или ‘unknown’ . Доступно с PHP 7.2.0. PHP_SAPI ( string ) API сервера (Server API) данной сборки PHP. Смотрите также php_sapi_name() . PHP_EOL ( string ) Корректный символ конца строки, используемый на данной платформе. PHP_INT_MAX ( int ) Максимальное целое число, поддерживаемое данной сборкой PHP. Обычно это int(2147483647) в 32-битных системах и int(9223372036854775807) в 64-битных. Обычно, PHP_INT_MIN === ~PHP_INT_MAX. PHP_INT_MIN ( int ) Минимальное целое число, поддерживаемое данной сборкой PHP. Обычно это int(-2147483648) в 32-битных системах и int(-9223372036854775808) в 64-битных. PHP_INT_SIZE ( int ) Размер целого числа в байтах в текущей сборке PHP. PHP_FLOAT_DIG ( int ) Количество десятичных цифр, которые могут быть округлены в float и обратно без потери точности. Доступно с PHP 7.2.0. PHP_FLOAT_EPSILON ( float ) Наименьшее положительное число x, такое, что x + 1.0 != 1.0 . Доступно с PHP 7.2.0. PHP_FLOAT_MIN ( float ) Наименьшее возможное положительное число типа float . Если вам нужно наименьшее возможное отрицательное число типа float , используйте — PHP_FLOAT_MAX . Доступно с PHP 7.2.0. PHP_FLOAT_MAX ( float ) Максимальное возможное число типа float . Доступно с PHP 7.2.0. DEFAULT_INCLUDE_PATH ( string ) PEAR_INSTALL_DIR ( string ) PEAR_EXTENSION_DIR ( string ) PHP_EXTENSION_DIR ( string ) Каталог по умолчанию, в котором следует искать динамически загружаемые модули (если он не переопределён в extension_dir). По умолчанию используется PHP_PREFIX (или PHP_PREFIX . «\\ext» в Windows). PHP_PREFIX ( string ) Значение —prefix было установлено при настройке. В Windows это значение —with-prefix было установлено при настройке. PHP_BINDIR ( string ) Значение —bindir было установлено при настройке. В Windows это значение —with-prefix было установлено при настройке. PHP_BINARY ( string ) Указывает путь к исполняемым файлам PHP во время выполнения скрипта. PHP_MANDIR ( string ) Указывает путь установки страниц документации man. PHP_LIBDIR ( string ) PHP_DATADIR ( string ) PHP_SYSCONFDIR ( string ) PHP_LOCALSTATEDIR ( string ) PHP_CONFIG_FILE_PATH ( string ) PHP_CONFIG_FILE_SCAN_DIR ( string ) PHP_SHLIB_SUFFIX ( string ) Суффикс, используемый для динамически линкуемых библиотек, таких как «so» (для большинства Unix-систем) или «dll» (Windows). PHP_FD_SETSIZE ( string ) Максимальное количество файловых дескрипторов для системных вызовов. Доступно с PHP 7.1.0. E_ERROR ( int ) Константа, указывающая уровень сообщений об ошибках E_WARNING ( int ) Константа сообщения об ошибке E_PARSE ( int ) Константа сообщения об ошибке E_NOTICE ( int ) Константа сообщения об ошибке E_CORE_ERROR ( int ) Константа сообщения об ошибке E_CORE_WARNING ( int ) Константа сообщения об ошибке E_COMPILE_ERROR ( int ) Константа сообщения об ошибке E_COMPILE_WARNING ( int ) Константа сообщения об ошибке E_USER_ERROR ( int ) Константа сообщения об ошибке E_USER_WARNING ( int ) Константа сообщения об ошибке E_USER_NOTICE ( int ) Константа сообщения об ошибке E_RECOVERABLE_ERROR ( int ) Константа сообщения об ошибке E_DEPRECATED ( int ) Константа сообщения об ошибке E_USER_DEPRECATED ( int ) Константа сообщения об ошибке E_ALL ( int ) Константа сообщения об ошибке E_STRICT ( int ) Константа сообщения об ошибке __COMPILER_HALT_OFFSET__ ( int ) true ( bool ) Смотрите раздел Булев тип. false ( bool ) Смотрите раздел Булев тип. null ( null ) Смотрите Null. PHP_WINDOWS_EVENT_CTRL_C ( int ) Событие Windows CTRL+C . Доступно с PHP 7.4.0 (Только для Windows). PHP_WINDOWS_EVENT_CTRL_BREAK ( int ) Событие Windows CTRL+BREAK . Доступно с PHP 7.4.0 (Только для Windows).

Читайте также:  Custom input radio css

Стандартные предопределённые константы

Все константы модулей, входящих в состав ядра, теперь определены в PHP по умолчанию.

User Contributed Notes 1 note

Volker’s getOS() function needs to have the order of cases changed in the switch statement since «darwin» contains «win», which means that both «windows» and «darwin» will return self::OS_WIN. I’ve moved the ‘dar’ case above the ‘win’ case:

const OS_UNKNOWN = 1 ;
const OS_WIN = 2 ;
const OS_LINUX = 3 ;
const OS_OSX = 4 ;

/**
* @return int
*/
static public function getOS () switch ( true ) case stristr ( PHP_OS , ‘DAR’ ): return self :: OS_OSX ;
case stristr ( PHP_OS , ‘WIN’ ): return self :: OS_WIN ;
case stristr ( PHP_OS , ‘LINUX’ ): return self :: OS_LINUX ;
default : return self :: OS_UNKNOWN ;
>
>

Источник

php_uname

php_uname() возвращает описание операционной системы, на которой запущен PHP. Это та же строка, с которой начинается вывод phpinfo() . Для вывода названия операционной системы также можно использовать константу PHP_OS , но имейте в виду, что эта константа содержит название операционной системы, на которой PHP был собран (built).

На некоторых старых UNIX-платформах получить информацию о текущей ОС может оказаться невозможным. В таких случаях функция выдаст название ОС, на которой PHP был собран. Такое случается, когда библиотека, которой пользуется uname(), недоступна или работает некорректно.

Список параметров

  • ‘a’ : По умолчанию. Содержит все режимы в следующей последовательности «s n r v m» .
  • ‘s’ : Название операционной системы, например, FreeBSD .
  • ‘n’ : Имя хоста, например, localhost.example.com .
  • ‘r’ : Номер релиза, например, 5.1.2-RELEASE .
  • ‘v’ : Информация о версии. Может сильно различаться в разных ОС.
  • ‘m’ : Архитектура процессора, например, i386 .

Возвращаемые значения

Возвращает описание ОС в виде строки.

Примеры

Пример #1 Несколько примеров использования php_uname()

Читайте также:  Css div нестандартной формы

/* Разные варианты:
Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686
Linux

FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001
FreeBSD

Windows NT XN1 5.1 build 2600
WINNT
*/

if ( strtoupper ( substr ( PHP_OS , 0 , 3 )) === ‘WIN’ ) echo ‘Сервер работает под управлением Windows!’ ;
> else echo ‘Сервер работает под управлением ОС, отличной от Windows!’ ;
>

Ниже приведено несколько Предопределённых PHP-констант, которые могут оказаться полезными:

Пример #2 Некоторые константы OS

// *nix
echo DIRECTORY_SEPARATOR ; // /
echo PHP_SHLIB_SUFFIX ; // so
echo PATH_SEPARATOR ; // :

// Win*
echo DIRECTORY_SEPARATOR ; // \
echo PHP_SHLIB_SUFFIX ; // dll
echo PATH_SEPARATOR ; // ;
?>

Смотрите также

  • phpversion() — Получает текущую версию PHP
  • php_sapi_name() — Возвращает тип интерфейса между веб-сервером и PHP
  • phpinfo() — Выводит информацию о текущей конфигурации PHP

User Contributed Notes 4 notes

Although it does not indicate receiving parameters this function allows some chars as parameters, they are the options a; m; n; r; s; v.

I don’t know exactly what each one does, but below is a code example and its output on PHP 5.5 running on RedHat 4.4

echo » ;
echo ‘(void): ‘ . php_uname (). «\n» ; // output: «(void): Linux web989.uni5.net 4.4.180 #1 SMP Wed May 22 15:27:37 -03 2019 x86_64»
echo ‘a: ‘ . php_uname ( ‘a’ ). «\n» ; // output: «a: Linux web989.uni5.net 4.4.180 #1 SMP Wed May 22 15:27:37 -03 2019 x86_64»
echo ‘m: ‘ . php_uname ( ‘m’ ). «\n» ; // output: «m: x86_64»
echo ‘n: ‘ . php_uname ( ‘n’ ). «\n» ; // output: «n: web989.uni5.net»
echo ‘r: ‘ . php_uname ( ‘r’ ). «\n» ; // output: «r: 4.4.180»
echo ‘s: ‘ . php_uname ( ‘s’ ). «\n» ; // output: «s: Linux»
echo ‘v: ‘ . php_uname ( ‘v’ ). «\n» ; // output: «v: #1 SMP Wed May 22 15:27:37 -03 2019»
// echo file_get_contents(‘/etc/issue’).»\n»;

echo ‘

‘ ;
phpinfo ();
?>

Note that I used file_get_contentes with a file, that file is present in most linux boxies and varies on content, but most of times it indicates kernel version, linux version, distribution and so on. In my case my user didn’t have access to the file, so to identify that it was a red hat I paid attention to php_info outputs, there in the middle was the postgress driver description, p. eg indicating the distribution.

Читайте также:  Перевод на следующую строку html

I guess there is no easy way to find out the server version programmatically a 100% of times, but by and large you can get around by yourself.

Note that php_uname(‘n’) does not always equal $_SERVER[‘HOST_NAME’]

The machine that you are running the script may server many different host names so don’t use this when building urls.

  • Опции PHP/информационные функции
    • assert_​options
    • assert
    • cli_​get_​process_​title
    • cli_​set_​process_​title
    • dl
    • extension_​loaded
    • gc_​collect_​cycles
    • gc_​disable
    • gc_​enable
    • gc_​enabled
    • gc_​mem_​caches
    • gc_​status
    • get_​cfg_​var
    • get_​current_​user
    • get_​defined_​constants
    • get_​extension_​funcs
    • get_​include_​path
    • get_​included_​files
    • get_​loaded_​extensions
    • get_​required_​files
    • get_​resources
    • getenv
    • getlastmod
    • getmygid
    • getmyinode
    • getmypid
    • getmyuid
    • getopt
    • getrusage
    • ini_​alter
    • ini_​get_​all
    • ini_​get
    • ini_​parse_​quantity
    • ini_​restore
    • ini_​set
    • memory_​get_​peak_​usage
    • memory_​get_​usage
    • memory_​reset_​peak_​usage
    • php_​ini_​loaded_​file
    • php_​ini_​scanned_​files
    • php_​sapi_​name
    • php_​uname
    • phpcredits
    • phpinfo
    • phpversion
    • putenv
    • set_​include_​path
    • set_​time_​limit
    • sys_​get_​temp_​dir
    • version_​compare
    • zend_​thread_​id
    • zend_​version
    • get_​magic_​quotes_​gpc
    • get_​magic_​quotes_​runtime
    • restore_​include_​path

    Источник

    php_uname

    php_uname() возвращает описание операционной системы, на которой запущен PHP. Это та же строка, с которой начинается вывод phpinfo() . Для вывода названия операционной системы используется константа PHP_OS . Обратите внимание, что эта константа содержит название операционной системы, на которой PHP был собран (built).

    На некоторых старых UNIX платформах получить информацию о текущей ОС может оказаться невозможным. В таких случаях функция выдаст название ОС, на которой PHP был собран. Такое случается, когда библиотека, которой пользуется uname(), недоступна или работает некорректно.

    Список параметров

    • ‘a’: По умолчанию. Содержит все режимы в следующей последовательности «s n r v m».
    • ‘s’: Название операционной системы. Например, FreeBSD.
    • ‘n’: Имя хоста, например, localhost.example.com.
    • ‘r’: Номер релиза. Например, 5.1.2-RELEASE.
    • ‘v’: Информация о версии. Может сильно различаться в разных ОС.
    • ‘m’: Архитектура процессора. Например, i386.

    Возвращаемые значения

    Возвращает описание ОС в виде строки.

    Примеры

    Пример #1 Несколько примеров использования php_uname()

    /* Разные варианты:
    Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686
    Linux

    FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001
    FreeBSD

    Windows NT XN1 5.1 build 2600
    WINNT
    */

    if ( strtoupper ( substr ( PHP_OS , 0 , 3 )) === ‘WIN’ ) echo ‘Сервер работает под управлением Windows!’ ;
    > else echo ‘Сервер работает под управлением ОС, отличной от Windows!’ ;
    >

    Ниже приведено несколько Предопределенных PHP констант, которые могут оказаться полезными:

    Пример #2 Некоторые OS константы

    // *nix
    echo DIRECTORY_SEPARATOR ; // /
    echo PHP_SHLIB_SUFFIX ; // so
    echo PATH_SEPARATOR ; // :

    // Win*
    echo DIRECTORY_SEPARATOR ; // \
    echo PHP_SHLIB_SUFFIX ; // dll
    echo PATH_SEPARATOR ; // ;
    ?>

    Смотрите также

    • phpversion() — Выдает текущую версию PHP
    • php_sapi_name() — Возвращает тип интерфейса между веб-сервером и PHP
    • phpinfo() — Выводит информацию о текущей конфигурации PHP

    Источник

Оцените статью