L'extension mysqli et les connexions persistantes
Notes
mysqli
PHP Manual

# Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

`MYSQLI_READ_DEFAULT_GROUP`

  Lit les options dans le groupe my.cnf ou dans le fichier spécifié par `MYSQLI_READ_DEFAULT_FILE`

`MYSQLI_READ_DEFAULT_FILE`

  Lit les options dans le fichier spécifié, plutôt que dans my.cnf

`MYSQLI_OPT_CONNECT_TIMEOUT`

  Durée d'expiration de la connexion, en secondes

`MYSQLI_OPT_LOCAL_INFILE`

  Active la commande LOAD LOCAL INFILE

`MYSQLI_INIT_COMMAND`

  Commande à exécuter lors de la connexion au serveur MySQL. Cette commande sera exécutée automatiquement lors de la reconnexion au serveur.

`MYSQLI_CLIENT_SSL`

  Utilise le protocole SSL (chiffrement). Cette option ne doit pas être activée par un programme : elle doit être activée en interne, par la bibliothèque MySQL.

`MYSQLI_CLIENT_COMPRESS`

  Utilise le protocole compressé

`MYSQLI_CLIENT_INTERACTIVE`

  Permet interactive_timeout secondes (au lieu de wait_timeout secondes) d'inactivité avant de fermer la connexion. La valeur de la variable wait_timeout du client prendra la valeur de interactive_timeout.

`MYSQLI_CLIENT_IGNORE_SPACE`

  Permet les espaces après un nom de fonction. Cela fait de tous les noms de fonctions, des mots réservés.

`MYSQLI_CLIENT_NO_SCHEMA`

  Interdit la syntaxe db_name.tbl_name.col_name.

`MYSQLI_CLIENT_MULTI_QUERIES`

  Permet plusieurs requêtes séparées par un point-virgule dans un seul appel à la fonction mysqli_query().

`MYSQLI_STORE_RESULT`

  Pour les résultats mis en tampon

`MYSQLI_USE_RESULT`

  Pour les résultats non-mis en tampon

`MYSQLI_ASSOC`

  Les colonnes sont retournées dans le tableau, avec leurs noms comme index.

`MYSQLI_NUM`

  Les colonnes sont retournées dans le tableau, avec leurs numéros comme index.

`MYSQLI_BOTH`

  Les colonnes sont retournées dans le tableau, avec leurs noms et leurs numéros comme index.

`MYSQLI_NOT_NULL_FLAG`

  Indique qu'un champ est défini comme NOT NULL

`MYSQLI_PRI_KEY_FLAG`

  Le champ est une clé primaire

`MYSQLI_UNIQUE_KEY_FLAG`

  Le champ est un index unique

`MYSQLI_MULTIPLE_KEY_FLAG`

  Le champ fait partie d'un index

`MYSQLI_BLOB_FLAG`

  Le champ est de type BLOB

`MYSQLI_UNSIGNED_FLAG`

  Le champ est de type UNSIGNED

`MYSQLI_ZEROFILL_FLAG`

  Le champ est de type ZEROFILL

`MYSQLI_AUTO_INCREMENT_FLAG`

  Le champ est de type AUTO_INCREMENT

`MYSQLI_TIMESTAMP_FLAG`

  Le champ est de type TIMESTAMP

`MYSQLI_SET_FLAG`

  Le champ est de type SET

`MYSQLI_NUM_FLAG`

  Le champ est de type NUMERIC

`MYSQLI_PART_KEY_FLAG`

  Le champ fait partie d'un index multiple

`MYSQLI_GROUP_FLAG`

  Le champ fait partie de la clause GROUP BY

`MYSQLI_TYPE_DECIMAL`

  Le champ est de type DECIMAL

`MYSQLI_TYPE_NEWDECIMAL`

  Le champ est de type DECIMAL ou NUMERIC (MySQL 5.0.3 et supérieur)

`MYSQLI_TYPE_BIT`

  Le champ est de type BIT (MySQL 5.0.3 et supérieur)

`MYSQLI_TYPE_TINY`

  Le champ est de type TINYINT

`MYSQLI_TYPE_SHORT`

  Le champ est de type SMALLINT

`MYSQLI_TYPE_LONG`

  Le champ est de type INT

`MYSQLI_TYPE_FLOAT`

  Le champ est de type FLOAT

`MYSQLI_TYPE_DOUBLE`

  Le champ est de type DOUBLE

`MYSQLI_TYPE_NULL`

  Le champ est de type DEFAULT NULL

`MYSQLI_TYPE_TIMESTAMP`

  Le champ est de type TIMESTAMP

`MYSQLI_TYPE_LONGLONG`

  Le champ est de type BIGINT

`MYSQLI_TYPE_INT24`

  Le champ est de type MEDIUMINT

`MYSQLI_TYPE_DATE`

  Le champ est de type DATE

`MYSQLI_TYPE_TIME`

  Le champ est de type TIME

`MYSQLI_TYPE_DATETIME`

  Le champ est de type DATETIME

`MYSQLI_TYPE_YEAR`

  Le champ est de type YEAR

`MYSQLI_TYPE_NEWDATE`

  Le champ est de type DATE

`MYSQLI_TYPE_INTERVAL`

  Le champ est de type INTERVAL

`MYSQLI_TYPE_ENUM`

  Le champ est de type ENUM

`MYSQLI_TYPE_SET`

  Le champ est de type SET

`MYSQLI_TYPE_TINY_BLOB`

  Le champ est de type TINYBLOB

`MYSQLI_TYPE_MEDIUM_BLOB`

  Le champ est de type MEDIUMBLOB

`MYSQLI_TYPE_LONG_BLOB`

  Le champ est de type LONGBLOB

`MYSQLI_TYPE_BLOB`

  Le champ est de type BLOB

`MYSQLI_TYPE_VAR_STRING`

  Le champ est de type VARCHAR

`MYSQLI_TYPE_STRING`

  Le champ est de type STRING ou BINARY

`MYSQLI_TYPE_CHAR`

  Le champ est de type TINYINT. Pour CHAR, voir MYSQLI_TYPE_STRING

`MYSQLI_TYPE_GEOMETRY`

  Le champ est de type GEOMETRY

`MYSQLI_NEED_DATA`

  Il reste des variables à relier

`MYSQLI_NO_DATA`

  Il n'y a plus de variables à relier

`MYSQLI_DATA_TRUNCATED`

  Les données ont été tronquées. Disponible depuis PHP 5.1.0 et MySQL 5.0.5.

`MYSQLI_ENUM_FLAG`

  Le champ est défini comme ENUM. Disponible depuis PHP 5.3.0.

`MYSQLI_BINARY_FLAG`

  Le champ est défini comme BINARY. Disponible depuis PHP 5.3.0.

`MYSQLI_CURSOR_TYPE_FOR_UPDATE`

`MYSQLI_CURSOR_TYPE_NO_CURSOR`

`MYSQLI_CURSOR_TYPE_READ_ONLY`

`MYSQLI_CURSOR_TYPE_SCROLLABLE`

`MYSQLI_STMT_ATTR_CURSOR_TYPE`

`MYSQLI_STMT_ATTR_PREFETCH_ROWS`

`MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH`

`MYSQLI_SET_CHARSET_NAME`

`MYSQLI_REPORT_INDEX`

  Rapporté si un mauvais index ou aucun index n'est utilisé dans une requête.

`MYSQLI_REPORT_ERROR`

  Rapporte les erreurs depuis des appels aux fonctions mysqli.

`MYSQLI_REPORT_STRICT`

  Lance une exception mysqli_sql_exception pour les erreurs au lieu d'alertes.

`MYSQLI_REPORT_ALL`

  Active toutes les options.

`MYSQLI_REPORT_OFF`

  Désactive toutes les options.

`MYSQLI_DEBUG_TRACE_ENABLED`

  Définit à 1 si la fonctionnalité mysqli_debug() est désactivée.

`MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED`

`MYSQLI_SERVER_QUERY_NO_INDEX_USED`

`MYSQLI_REFRESH_GRANT`

  Rafraîchie les tables GRANT.

`MYSQLI_REFRESH_LOG`

  Vide les logs, identique à exécuter la requête SQL FLUSH LOGS.

`MYSQLI_REFRESH_TABLES`

  Vide le cache des tables, identique à exécuter la requête SQL FLUSH TABLES.

`MYSQLI_REFRESH_HOSTS`

  Vide le cache des hôtes, identique à exécuter la requête SQL FLUSH HOSTS.

`MYSQLI_REFRESH_STATUS`

  Réinitialise le statut des variables, identique à exécuter la requête SQL FLUSH STATUS.

`MYSQLI_REFRESH_THREADS`

  Vide le cache des threads.

`MYSQLI_REFRESH_SLAVE`

  Sur un serveur esclave de réplication : réinitialise les informations du serveur maître, et redémarre l'esclave. Identique à exécuter la requête SQL RESET SLAVE.

`MYSQLI_REFRESH_MASTER`

  Sur un serveur maître de réplication : supprime les fichiers binaires de logs listés dans l'index binaire des logs, et tronque le fichier index. Identique à exécuter la requête SQL RESET MASTER.

`MYSQLI_TRANS_COR_AND_CHAIN`

  Ajout de "AND CHAIN" à mysqli_commit() ou mysqli_rollback().

`MYSQLI_TRANS_COR_AND_NO_CHAIN`

  Ajout de "AND NO CHAIN" à mysqli_commit() ou mysqli_rollback().

`MYSQLI_TRANS_COR_RELEASE`

  Ajout de "RELEASE" à mysqli_commit() ou mysqli_rollback().

`MYSQLI_TRANS_COR_NO_RELEASE`

  Ajout de "NO RELEASE" à mysqli_commit() ou mysqli_rollback().

L'extension mysqli et les connexions persistantes
Notes
mysqli
PHP Manual