sql >> Database teknologi >  >> RDS >> Mysql

Får du en PHP PDO-forbindelse fra en mysql_connect()?

Begge udvidelser bruger internt EG(persistent_list) til at opbevare det vedvarende forbindelseshåndtag. Men de opretter forskellige hashes/nøgler til denne liste, så de kan ikke finde indgange i den respektive anden udvidelse.

Mysql-udvidelsen opretter nøgler af formen "mysql_<host&port>_<user>..." mens pdo bygger "PDO:DBH:DSN=<dsn>:<user>:...." . Hasherne bruges næsten som array-nøgler i et php-script. (Over-)forenklet eksempel:

function pconnect($host,$user,$pass) {
  global $persistent_list;
  $hashkey = sprintf("extensionname_%s_%s_%s", $host, $user, $pass);
  if ( isset($persistent_list[$hashkey]) ) {
    // use stored connection
  }
  else {
    // create new connection
  }
}

Så svaret er:Nej, forbindelserne vil ikke blive delt mellem og genbrugt af mysql-udvidelsen og PDO.



  1. MySQL forklarer forespørgselsforståelse

  2. Sådan begrænser du SHOW TABLES-forespørgsel

  3. Åbn automatisk SQLite-forespørgselsresultater i Excel

  4. Brug MySQL Relational Databases på CentOS 5