Ce face php_uname
php_uname spune pe ce sistem rulează scriptul: numele sistemului de operare, numele calculatorului, versiunea nucleului și arhitectura procesorului. Modul "a" (implicit) le returnează pe toate într-un singur text.
Modurile individuale sunt "s" (sistemul, de exemplu Linux), "n" (numele calculatorului), "r" (versiunea), "v" (detalii de versiune) și "m" (arhitectura, de exemplu x86_64). Pentru o verificare simplă a sistemului, constanta PHP_OS_FAMILY este mai comodă.
Parametri
| Parametru | Descriere |
|---|---|
$mode |
Opțional. Una dintre literele a, s, n, r, v, m. |
Ce returnează
Informația cerută, ca text.
Exemple
Exemplul 1: Toate informațiile
<?php
echo php_uname();
Rezultat posibil (depinde de server)
Linux web01 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64
Exemplul 2: Părți separate
<?php
echo "Sistem: " . php_uname("s") . "\n";
echo "Server: " . php_uname("n") . "\n";
echo "Arhitectură: " . php_uname("m");
Rezultat posibil (depinde de server)
Sistem: Linux
Server: web01
Arhitectură: x86_64
Exemplul 3: Cod diferit pe Windows
<?php
if (PHP_OS_FAMILY === "Windows") {
echo "Rulez pe Windows";
} else {
echo "Rulez pe " . PHP_OS_FAMILY;
}
Rezultat posibil (depinde de server)
Rulez pe Linux
Greșeli frecvente
- Verifici sistemul cu
str_contains(php_uname(), "Win").PHP_OS_FAMILYeste mai simplu și mai sigur:"Windows","Linux","Darwin"(macOS) și altele.
Comenzi înrudite
phpversion: Returnează versiunea PHP care rulează scriptul sau versiunea unei extensii.memory_get_usage / memory_get_peak_usage: Returnează câtă memorie folosește scriptul acum (memory_get_usage) sau maximul atins (memory_get_peak_usage).