Gibt es eine Möglichkeit, eine eindeutige Verbindungs-ID einer PDO-Verbindung zu mysql zu erhalten?PDO-Verbindungs-ID erhalten
Antwort
Versuchen Sie es so.
print_r($dbh->query('SELECT CONNECTION_ID()')->fetch(PDO::FETCH_ASSOC));
können Sie eine regelmäßige Abfrage verwenden, um den CONNECTION_ID() mysql-Befehl auszuführen, um den Verbindungs-ID zu erhalten.
/* Define Data */
define("DB_HOST","localhost");
define("DB_NAME","DB_NAME");
define("DB_USERNAME","DB_USERNAME");
define("DB_PASSWORD","DB_PASSWORD");
define("DB_CHARSET","utf8");
class conn_db
{
private static $main_var = NULL;
function __construct()
{
$this->db_host=DB_HOST;
$this->db_name=DB_NAME;
$this->db_username=DB_USERNAME;
$this->db_pass=DB_PASSWORD;
if (!self::$main_var)
{
self::$main_var= new PDO("mysql:host=".$this->db_host.";dbname=". $this->db_name.";charset=".DB_CHARSET."", $this->db_username, $this->db_pass);
self::$main_var->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1);
self::$main_var->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
return self::$main_var;
}
/*fetch results*/
public static function get_results($getquery,$param=NULL,$type=NULL)
{
try
{
$PDO_connect=self::$main_var;
$data_query=$PDO_connect->prepare($getquery);
if($param!=NULL)
{
foreach($param as $param_name => &$param_value)
{
$data_query->bindParam(':'.$param_name, $param_value);
}
}
$data_query->execute();
if($type==NULL)
{
$fetch_type=PDO::FETCH_OBJ;
}
if($type=="_A")
{
$fetch_type=PDO::FETCH_ASSOC;
}
$fetch_data=$data_query->fetchAll($fetch_type);
return $fetch_data;
}
catch(PDOException $Exc) {
echo $Exc->getMessage();
die();
return FALSE;
}
}
/*action results such like insert , update,delete and alter
return value last insert row id
*/
public static function query($getquery,$param=NULL)
{
try
{
$PDO_connect=self::$main_var;
$data_query=$PDO_connect->prepare($getquery);
/*for insertion*/
if (strpos(strtolower($getquery),'insert') !== false)
{
$data_query->execute($param);
return $PDO_connect->lastInsertId();
}
/*for update,delete,etc*/
else{
if($param!=NULL)
{
foreach($param as $param_name => &$param_value)
{
$data_query->bindParam(':'.$param_name, $param_value);
}
}
$data_query->execute();
return $data_query;
}
}
catch(PDOException $Exc) {
echo $Exc->getMessage();
die();
return FALSE;} }
}
$GLOBALS['conn_db']=new conn_db();
nur Gedanken: Wäre es nützlich für andere, die Ihre Antwort lesen, zu erklären, warum es eine eindeutige Verbindungs-ID bietet, als gegen andere Verbindungen überprüft werden kann, was wurde benötigt? (Ich gehe nicht nach unten) –
Code nur Antworten werden abgeraten. Auch, was ist mit Ihrer Einrückung, * geeeshk *! –
- 1. Erhalten
- 2. PHP: Erhalten Körper der Anfrage erhalten
- 3. Annotationswert erhalten?
- 4. erhalten Stromregler
- 5. Fehler erhalten?
- 6. Erhalten Stapelrahmen
- 7. Finanzdaten erhalten
- 8. MySQLSyntaxErrorException erhalten?
- 9. Unterklassenname erhalten?
- 10. Systemschriften erhalten
- 11. Paketname erhalten
- 12. URL erhalten, Titel durch Javascript nicht erhalten jQuery
- 13. Erhalten erste Instanz und Erhalten letzte Instanz String
- 14. Bilder von json mit $ http erhalten, nur die erste erhalten
- 15. Erhalten Sie Siri Remote-Ausrichtung (oder erhalten Benachrichtigungen über Änderungen?)
- 16. Erhalten "Unvollständige Antwort von der Anwendung erhalten" in Rails
- 17. Erhalten 2 SQLite Datensätze für jede E-Mail erhalten
- 18. Zend Framework: Empfehlungsseite erhalten?
- 19. Erhalten Sie meine Zeichencodierung
- 20. jQuery DOM-Knoten erhalten?
- 21. Programmgesteuert Google Suchergebnisse erhalten
- 22. Wert von CorrelationHandle erhalten
- 23. Klassen-Eltern erhalten?
- 24. Fehler beim Kompilieren erhalten?
- 25. Erhalten Datum von String
- 26. Wordpress erhalten benutzerdefinierte Beitragszählung
- 27. Bits Erhalten von Byte
- 28. Django Absolute URL erhalten
- 29. erhalten Funktionsname drin
- 30. Jquery erhalten Element
Was wollen Sie mit dieser ID zu tun? ZB: Objekte vergleichen? Finden Sie korrelierende Einträge im allgemeinen Abfrageprotokoll von mysql? Implementiert eine Art Verbindungspooling? ...? – VolkerK