PDO – die Abkürzung für PHP Data Object. Um eine einheitliche Verbindungsschnittstelle für mehrere Datenbanken bereitzustellen, muss die unterste Ebene von PDO mit dem PDO-Datentreiber der entsprechenden Datenbank zusammenarbeiten, um die Datenbank zu betreiben. PDO ist die heute offiziell von PHP empfohlene Datenbankverbindungsmethode . Seine Vorteile sind:
1. PDO ist eine wirklich einheitliche Schnittstellen-Datenbankoperation, die am implementiert ist Unten: Unabhängig davon, welche Art von Datenbank im Backend verwendet wird, sind die Aufrufe der Anwendungsschicht grundsätzlich gleich. Wenn die Backend-Datenbank geändert wird, muss der Code der Anwendungsschicht grundsätzlich nicht geändert werden. Empfohlenes Lernen: PHP-Programmierung vom Anfänger bis zum Experten)
2. PDO unterstützt fortgeschrittenere DB-Funktionsoperationen, wie zum Beispiel: Planung gespeicherter Prozeduren usw., die von MySQL nicht unterstützt werden native Bibliothek.
3. PDO ist die offizielle PECL-Bibliothek von PHP. Ihre Kompatibilität und Stabilität muss höher sein als die MySQL-Erweiterung. Sie können das Upgrade direkt mit dem Befehl pecl upgrade durchführen . PDO kann SQL-Injection verhindern und sicherstellen, dass die Datenbank sicherer ist. Das Prinzip der PDO-Verhinderung der SQL-Injection
Nach PHP 5.1.0 ist PDO standardmäßig aktiviert. Sie können den Öffnungsstatus von PDO über die Funktion phpinfo() überprüfen:
PDO-VorverarbeitungWenn wir die Datenbank zum Ausführen einer Abfrage verwenden, kompiliert das Datenbankverwaltungssystem (DBMS) die Abfrage und optimiert die Abfrage. Mithilfe der PDO-Vorverarbeitung kann dieser Prozess nur durchgeführt werden Bei der ersten Abfrage müssen nur die gebundenen Parameter ersetzt werden, wodurch die Zeit für die wiederholte Kompilierung gespart wird. Darüber hinaus können durch die Verwendung der PDO-Parameterbindung auch Sicherheitsprobleme wie SQL-Injection vermieden werden.
Codedemonstration:
<?phptry{ $dbh=new PDO('mysql:host=localhost;dbname=testDB','root',''); $stmt=$dbh->prepare("INSERT users (user_name,sex) VALUES (:user_name,:sex)"); $stmt->bindParam(':user_name',$name); $stmt->bindParam(":sex",$sex); //插入一行 $name="yang001"; $sex="M"; $stmt->execute(); //再次插入一行 $name="yang002"; $sex="F"; $stmt->execute(); }catch (PDOException $e){ print "Error ! : ".$e->getMessage(); die(); }
Sehen Sie sich die Datenbankergebnisse wie folgt an:
Wir verwenden vorverarbeitete Abfrageanweisungen, um die Ergebnisse abzurufen:<?phptry{ $dbh=new PDO('mysql:host=localhost;dbname=testDB','root',''); $stmt=$dbh->prepare("SELECT * FROM users WHERE user_name=:user_name "); $stmt->bindParam(':user_name',$name); //插入一行 $name="yang001"; if($stmt->execute()){ while ($row=$stmt->fetch(PDO::FETCH_ASSOC)){ print_r($row); } } }catch (PDOException $e){ print "Error ! : ".$e->getMessage(); die(); }
Das obige ist der detaillierte Inhalt vonIst es in Ordnung, PDO für PHP zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!