PHP PDO-Verbindungs-Manager
Der Anschluss erfolgt über eine Instanz der PDO-Basisklasse etabliert zu schaffen. Unabhängig von dem Fahrer, verwendet PDO Klassennamen.
Eine Verbindung mit MySQL
<?php $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); ?>
Hinweis: Wenn es irgendwelche Verbindungsfehler sind, wird eine Ausnahme Objekt PDOException werfen.
Handle Verbindungsfehler
<?php try { $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); foreach($dbh->query('SELECT * from FOO') as $row) { print_r($row); } $dbh = null; } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); } ?>
Nach einem erfolgreichen Verbindungsdaten, eine Instanz der PDO-Klasse an das Skript zurückgeben, in diesem Zusammenhang Lebensdauer PDO Objekt bleibt aktiv.
Um die Verbindung zu schließen, müssen Sie das Objekt zu zerstören, um zu gewährleisten, dass alle Referenzen darauf gelöscht werden, können Sie einen NULL-Wert auf die Objektvariable zuweisen.
Wenn Sie das nicht tun, PHP am Ende des Skripts wird automatisch die Verbindung zu schließen.
So schließen Sie eine Verbindung:
<?php $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); // 在此使用连接 // 现在运行完成,在此关闭连接 $dbh = null; ?>
Viele Web-Anwendungen profitieren durch die Verwendung von persistenten Verbindungen zu Datenbankdienste.
Dauerhafte Verbindungen werden nicht am Ende des Skripts geschlossen werden und wird zwischengespeichert, wenn ein anderes Skript die gleichen Anmeldeinformationen Verbindungsanforderung unter Verwendung wiederverwendet wird.
Persistent Verbindung Cache jedesmal, wenn das Skript den Aufwand für die Errichtung einer neuen Datenbankverbindung mit der Antwort zu vermeiden muss, so dass Web-Anwendungen schneller.
Dauerhafte Verbindungen
<?php $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array( PDO::ATTR_PERSISTENT => true )); ?>
Hinweis: Wenn Sie eine persistente Verbindung zu verwenden möchten, müssen Sie eine Reihe von Optionen an PDO Konstruktor gesetzt PDO :: ATTR_PERSISTENT fahren. Wenn Sie sind, nachdem das Objekt mit PDO :: setAttribute () initialisiert wird diese Eigenschaft gesetzt ist, wird der Fahrer nicht persistente Verbindungen verwenden.
PHP PDO - Referenzhandbuch