PHP Les boucles while et do while
Cet article explique comment récupérer la version du serveur MySQL avec la fonction server_info ou mysqli_get_server_info() en PHP.
Cette fonction est utile pour vérifier la version du serveur MySQL avant d'exécuter des requêtes ou des transactions complexes.
PHP Version: 5+
La fonction server_info ou mysqli_get_server_info() est une fonction PHP qui permet de récupérer la version du serveur MySQL auquel un script est connecté. Elle est disponible dans les deux styles de programmation PHP : orienté objet et procédural.
En style orienté objet, la fonction s'appelle server_info() et est une propriété de l'objet mysqli. Elle retourne une chaîne de caractères représentant la version du serveur MySQL.
En style procédural, la fonction s'appelle mysqli_get_server_info() et prend en paramètre un objet mysqli. Elle retourne également une chaîne de caractères représentant la version du serveur MySQL.
$mysqli = new mysqli("localhost", "my_user", "my_password"); // Récupère la version du serveur MySQL echo $mysqli->server_info;
$link = mysqli_connect("localhost", "my_user", "my_password"); // Récupère la version du serveur MySQL echo mysqli_get_server_info($link);
La chaîne de caractères retournée par la fonction server_info ou mysqli_get_server_info() est de la forme suivante :
Version du serveur MySQL: 8.0.21-MariaDB-log
Les valeurs possibles sont les suivantes :
La fonction mysqli_get_server_info() ne prend qu'un seul paramètre, un objet mysqli. Ce paramètre est facultatif, car il est possible de le déduire de la variable GLOBALS["___mysqli_ston"], mais il est recommandé de l'expliciter pour plus de clarté.
Exemple : Copier le code
<?php // Définit les paramètres de connexion $servername = "localhost"; $username = "my_user"; $password = "my_password"; // Crée un objet mysqli $mysqli = new mysqli($servername, $username, $password); // Récupère la version du serveur MySQL echo $mysqli->server_info; // Ferme la connexion $mysqli->close(); ?>
Exemple : Copier le code
<?php // Définit les paramètres de connexion $servername = "localhost"; $username = "my_user"; $password = "my_password"; // Connecte à la base de données $link = mysqli_connect($servername, $username, $password); // Récupère la version du serveur MySQL echo mysqli_get_server_info($link); // Ferme la connexion mysqli_close($link); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $mysqli = new mysqli($servername, $username, $password); $version = $mysqli->server_info; echo "Version du serveur MySQL : $version"; $mysqli->close(); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $link = mysqli_connect($servername, $username, $password); $version = mysqli_get_server_info($link); echo "Version du serveur MySQL : $version"; mysqli_close($link); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $mysqli = new mysqli($servername, $username, $password); $version = $mysqli->server_info; file_put_contents("/var/log/mysql_version.log", $version); $mysqli->close(); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $link = mysqli_connect($servername, $username, $password); $version = mysqli_get_server_info($link); file_put_contents("/var/log/mysql_version.log", $version); mysqli_close($link); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $mysqli = new mysqli($servername, $username, $password); $version = $mysqli->server_info; if (version_compare($version, "8.0.21", ">=")) { // La version est compatible } else { // La version n'est pas compatible } $mysqli->close(); ?>
Exemple : Copier le code
<?php $servername = "localhost"; $username = "my_user"; $password = "my_password"; $link = mysqli_connect($servername, $username, $password); $version = mysqli_get_server_info($link); if (version_compare($version, "8.0.21", ">=")) { // La version est compatible } else { // La version n'est pas compatible } mysqli_close($link); ?>