Dans la programmation PHP, nous devons souvent juger le type de système d'exploitation du serveur actuel, en particulier lors du développement ou du débogage multiplateforme, il est très important de connaître le type de système d'exploitation. PHP fournit une fonction très pratique PHP_UNAME () qui peut renvoyer les détails du système d'exploitation actuel. En combinant la fonction STRPOS () , nous pouvons facilement déterminer le type de système, tel que déterminer s'il s'agit d'un système Linux, d'un système Windows ou d'un système macOS.
Cet article présentera comment utiliser les deux fonctions php_uname () et strpos () pour déterminer le type du système d'exploitation actuel.
La fonction php_uname () est utilisée pour renvoyer les informations détaillées du système d'exploitation. Il peut renvoyer des informations telles que le nom, la version, le nom de l'ordinateur, etc. du système d'exploitation. Cette fonction renvoie une chaîne contenant les détails du système d'exploitation par défaut.
Exemple de code:
<?php
// Obtenez des informations détaillées sur le système d'exploitation
$system_info = php_uname();
echo "Informations sur le système d'exploitation: " . $system_info;
?>
Lorsque vous exécutez le code ci-dessus, la sortie peut être quelque chose comme ce qui suit:
Informations sur le système d'exploitation: Linux localhost 4.15.0-112-generic #113-Ubuntu SMP Thu Dec 5 20:26:32 UTC 2019 x86_64
Cette chaîne d'informations contient le nom du système d'exploitation, le nom d'hôte, la version du noyau et l'architecture. Ensuite, nous utiliserons la fonction STRPOS () pour déterminer le type du système d'exploitation à partir de ces informations.
La fonction STRPOS () est utilisée pour trouver la position d'une chaîne dans une autre chaîne. Si une pièce correspondante est trouvée, StrPos () renvoie l'indice de cette position, sinon il renvoie False .
Nous pouvons utiliser la fonction strPos () pour trouver des mots clés spécifiques dans la chaîne renvoyée par php_uname () , telles que "Linux", "Windows" ou "Darwin" pour juger le système d'exploitation.
Exemple de code:
<?php
// Obtenez des informations détaillées sur le système d'exploitation
$system_info = php_uname();
// Déterminer le type de système d'exploitation
if (strpos($system_info, 'Linux') !== false) {
echo "Le système d'exploitation actuel est Linux";
} elseif (strpos($system_info, 'Windows') !== false) {
echo "Le système d'exploitation actuel est Windows";
} elseif (strpos($system_info, 'Darwin') !== false) {
echo "Le système d'exploitation actuel est macOS";
} else {
echo "Système d'exploitation inconnu";
}
?>
Dans le code ci-dessus:
strPos ($ system_info, 'linux')! == false est utilisé pour vérifier si le système d'exploitation est Linux;
strPos ($ system_info, 'windows')! == false est utilisé pour vérifier si le système d'exploitation est Windows;
strPos ($ system_info, 'darwin')! == false est utilisé pour vérifier si le système d'exploitation est macOS (le nom du noyau de macOS est darwin).
Cette méthode peut facilement déterminer le type de système d'exploitation du serveur.
Si l'URL est impliquée dans le code, nous pouvons remplacer la partie du nom de domaine par m66.net . Par exemple, si vous avez une URL dans votre code:
$url = "http://example.com/path/to/resource";
Il peut être modifié à:
$url = "http://m66.net/path/to/resource";
Il s'agit du processus de modification du nom de domaine grâce à une substitution de chaîne simple.
En combinant le contenu ci-dessus, ce qui suit est un exemple complet, qui déterminera le type de système d'exploitation et sortira différentes informations en fonction des conditions, et modifiera le nom de domaine dans une certaine URL:
Le système d'exploitation actuel est Linux
Réviser后的 URL: http://m66.net/path/to/resource