# La classe mysqli

(PHP 5, PHP 7, PHP 8)

## Introduction

Représente une connexion entre PHP et une base de données MySQL.

## Synopsis de la classe

class mysqli {
/* Propriétés */
public readonly int|string $affected_rows;
public readonly string $client_info;
public readonly int $client_version;
public readonly int $connect_errno;
public readonly ?string $connect_error;
public readonly int $errno;
public readonly string $error;
public readonly array $error_list;
public readonly int $field_count;
public readonly string $host_info;
public readonly ?string $info;
public readonly int|string $insert_id;
public readonly string $server_info;
public readonly int $server_version;
public readonly string $sqlstate;
public readonly int $protocol_version;
public readonly int $thread_id;
public readonly int $warning_count;
/* Méthodes */
public __construct(
?string `$hostname` = `null`,
?string `$username` = `null`,
#[\SensitiveParameter] ?string `$password` = `null`,
?string `$database` = `null`,
?int `$port` = `null`,
?string `$socket` = `null`
)
public autocommit(bool `$enable`): bool
public begin_transaction(int `$flags` = 0, ?string `$name` = `null`): bool
public change_user(string `$username`, #[\SensitiveParameter] string `$password`, ?string `$database`): bool
public character_set_name(): string
public close(): true
public commit(int `$flags` = 0, ?string `$name` = `null`): bool
public connect(
?string `$hostname` = `null`,
?string `$username` = `null`,
#[\SensitiveParameter] ?string `$password` = `null`,
?string `$database` = `null`,
?int `$port` = `null`,
?string `$socket` = `null`
): bool
public debug(string `$options`): true
public dump_debug_info(): bool
public execute_query(string `$query`, ?array `$params` = `null`): mysqli_result|bool
public get_charset(): ?object
#[\Deprecated]
public get_client_info(): string
public get_connection_stats(): array
public get_server_info(): string
public get_warnings(): mysqli_warning|false
#[\Deprecated]
public init(): ?bool
#[\Deprecated]
public kill(int `$process_id`): bool
public more_results(): bool
public multi_query(string `$query`): bool
next_result(): bool
public options(int `$option`, string|int `$value`): bool
#[\Deprecated]
public ping(): bool
public static poll(
?array `&$read`,
?array `&$error`,
array `&$reject`,
int `$seconds`,
int `$microseconds` = 0
): int|false
public prepare(string `$query`): mysqli_stmt|false
public query(string `$query`, int `$result_mode` = `MYSQLI_STORE_RESULT`): mysqli_result|bool
public real_connect(
?string `$hostname` = `null`,
?string `$username` = `null`,
#[\SensitiveParameter] ?string `$password` = `null`,
?string `$database` = `null`,
?int `$port` = `null`,
?string `$socket` = `null`,
int `$flags` = 0
): bool
public real_escape_string(string `$string`): string
public real_query(string `$query`): bool
public reap_async_query(): mysqli_result|bool
#[\Deprecated]
public refresh(int `$flags`): bool
public release_savepoint(string `$name`): bool
public rollback(int `$flags` = 0, ?string `$name` = `null`): bool
public savepoint(string `$name`): bool
public select_db(string `$database`): bool
public set_charset(string `$charset`): bool
public ssl_set(
?string `$key`,
?string `$certificate`,
?string `$ca_certificate`,
?string `$ca_path`,
?string `$cipher_algos`
): true
public stat(): string|false
public stmt_init(): mysqli_stmt|false
public store_result(int `$mode` = 0): mysqli_result|false
public thread_safe(): bool
public use_result(): mysqli_result|false
}

## Sommaire

- mysqli::$affected_rows — Retourne le nombre de lignes affectées par la dernière opération MySQL
- mysqli::autocommit — Active ou désactive le mode auto-commit
- mysqli::begin_transaction — Démarre une transaction
- mysqli::change_user — Change l'utilisateur de la connexion
- mysqli::character_set_name — Retourne le jeu de caractères courant pour la connexion
- mysqli::close — Ferme une connexion
- mysqli::commit — Valide la transaction courante
- mysqli::$connect_errno — Retourne le code d'erreur du dernier appel de connexion
- mysqli::$connect_error — Retourne une description de la dernière erreur de connexion
- mysqli::__construct — Ouvre une connexion à un serveur MySQL
- mysqli::debug — Effectue des actions de débogage
- mysqli::dump_debug_info — Écrit les informations de débogage dans les logs
- mysqli::$errno — Retourne le dernier code d'erreur produit
- mysqli::$error — Retourne une chaîne décrivant la dernière erreur
- mysqli::$error_list — Retourne une liste d'erreur depuis la dernière commande exécutée
- mysqli::execute_query — Prépare, lie les paramètres et exécute une instruction SQL
- mysqli::$field_count — Retourne le nombre de colonnes pour la dernière requête
- mysqli::get_charset — Retourne un objet représentant le jeu de caractères
- mysqli::$client_info — Récupère des informations sur le client MySQL
- mysqli::$client_version — Retourne la version du client MySQL sous forme d'un entier
- mysqli::get_connection_stats — Retourne des statistiques sur la connexion
- mysqli::$host_info — Retourne une chaîne contenant le type de connexion utilisée
- mysqli::$protocol_version — Retourne la version du protocole MySQL utilisé
- mysqli::$server_info — Retourne la version du serveur MySQL
- mysqli::$server_version — Retourne un entier représentant la version du serveur MySQL
- mysqli::get_warnings — Lit le résultat de SHOW WARNINGS
- mysqli::$info — Retourne des informations à propos de la dernière requête exécutée
- mysqli::init — Initialise MySQLi et retourne un objet à utiliser avec mysqli_real_connect()
- mysqli::$insert_id — Retourne la valeur généré pour une colonne AUTO_INCREMENT par la dernière requête
- mysqli::kill — Demande au serveur de terminer un thread MySQL
- mysqli::more_results — Vérifie s'il y a d'autres jeux de résultats MySQL disponibles
- mysqli::multi_query — Exécute une ou plusieurs requêtes sur la base de donnée
- mysqli::next_result — Prépare le prochain résultat d'une requête multiple
- mysqli::options — Définit les options
- mysqli::ping — Ping la connexion au serveur et reconnecte si elle n'existe plus
- mysqli::poll — Vérifie l'état de la connexion
- mysqli::prepare — Prépare une requête SQL pour l'exécution
- mysqli::query — Exécute une requête sur la base de données
- mysqli::real_connect — Ouvre une connexion à un serveur MySQL
- mysqli::real_escape_string — Protège les caractères spéciaux d'une chaîne pour l'utiliser dans une requête SQL, en prenant en compte le jeu de caractères courant de la connexion
- mysqli::real_query — Exécute une requête SQL
- mysqli::reap_async_query — Lit un résultat pour une requête asynchrone
- mysqli::refresh — Rafraîchie
- mysqli::release_savepoint — Supprime le point de sauvegardé nommé du jeu des points de sauvegarde de la transaction courante
- mysqli::rollback — Annule la transaction courante
- mysqli::savepoint — Définit un point de sauvegarde nommé de la transaction
- mysqli::select_db — Sélectionne une base de données par défaut pour les requêtes
- mysqli::set_charset — Définit le jeu de caractères du client
- mysqli::$sqlstate — Retourne l'erreur SQLSTATE de la dernière opération MySQL
- mysqli::ssl_set — Utilisée pour établir une connexion sécurisée avec SSL
- mysqli::stat — Obtient le statut courant du système
- mysqli::stmt_init — Initialise une commande MySQL
- mysqli::store_result — Transfère un jeu de résultats à partir de la dernière requête
- mysqli::$thread_id — Retourne l'identifiant du thread pour la connexion courante
- mysqli::thread_safe — Indique si le support des threads est activé ou pas
- mysqli::use_result — Initialise la récupération d'un jeu de résultats
- mysqli::$warning_count — Retourne le nombre d'avertissements générés par la dernière requête exécutée