mysqlnd_uh_set_connection_proxy

(PECL mysqlnd-uh >= 1.0.0-alpha)

mysqlnd_uh_set_connection_proxyInstalle un proxy pour les connexions mysqlnd

Description

mysqlnd_uh_set_connection_proxy ( MysqlndUhConnection &$connection_proxy , mysqli &$mysqli_connection = ? ) : bool

Installe un objet proxy pour intercepter les méthodes des objets de connexion mysqlnd. Une fois installée, le proxy sera utilisé pour toutes les connexions MySQL ouvertes avec mysqli, mysql ou PDO_MYSQL, en supposant que ces extensions sont compilés pour utiliser la bibliothèque mysqlnd.

La fonction peut être désactivée avec l'option mysqlnd_uh.enable. Si mysqlnd_uh.enable vaut false, la fonction n'installera pas le proxy et retournera toujours true. De plus, une alerte de niveau E_WARNING pourra être émise. Le message d'erreur sera PHP Warning: mysqlnd_uh_set_connection_proxy(): (Mysqlnd User Handler) The plugin has been disabled by setting the configuration parameter mysqlnd_uh.enable = false. The proxy has not been installed [...].

Liste de paramètres

connection_proxy

Un objet proxy de type MysqlndUhConnection.

mysqli_connection

Objet de type mysqli. Si fourni, le proxy ne sera défini que pour cette connexion.

Valeurs de retour

Retourne true en cas de succès, false sinon.

Exemples

Exemple #1 Exemple avec mysqlnd_uh_set_connection_proxy()

<?php
$mysqli 
= new mysqli("localhost""root""""test");
$mysqli->query("SELECT 'No proxy installed, yet'");

class 
proxy extends MysqlndUhConnection {
 public function 
query($res$query) {
   
printf("%s(%s)\n"__METHOD__var_export(func_get_args(), true));
   
$ret parent::query($res$query);
   
printf("%s retourne %s\n"__METHOD__var_export($rettrue));
   return 
$ret;
 }
}
mysqlnd_uh_set_connection_proxy(new proxy());

$mysqli->query("SELECT 'mysqlnd rocks!'");

$mysql mysql_connect("localhost""root""""test");
mysql_query("SELECT 'Ahoy Andrey!'"$mysql);

$pdo = new PDO("mysql:host=localhost;dbname=test""root""");
$pdo->query("SELECT 'Moin Johannes!'");
?>

L'exemple ci-dessus va afficher :

proxy::query(array (
  0 => NULL,
  1 => 'SELECT \'mysqlnd rocks!\'',
))
proxy::query retourne true
proxy::query(array (
  0 => NULL,
  1 => 'SELECT \'Ahoy Andrey!\'',
))
proxy::query retourne true
proxy::query(array (
  0 => NULL,
  1 => 'SELECT \'Moin Johannes!\'',
))
proxy::query retourne true

Voir aussi

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top