PHP Data Objects oder kurz PDO stellt eine Abstraktionsebene für den Datenbankzugriff dar und ermöglicht einen einheitlichen Zugang von PHP auf unterschiedliche SQL-basierte Datenbanken, wie zum Beispiel MySQL, PostgreSQL oder SQLite. Dabei wird unter anderem der Portierungsaufwand beim Umstieg auf eine andere Datenbank minimiert. Es wird nur der Datenbankzugriff abstrahiert, nicht die Datenbank selbst. Für die zu nutzende Datenbank wird ein datenbankspezifischer Treiber benötigt.[1]

Eigenschaften

Bearbeiten

PDO ist objektorientiert aufgebaut und kann im Gegensatz zum Pendant MySQLi nicht prozedural benutzt werden. Die objektorientierte Umgebung erleichtert den Entwicklern das Erweitern der Schnittstellenfunktionalität.

Mit PDO haben Entwickler die Möglichkeit, für Datenbankanweisungen sogenannte Prepared Statements zu verwenden. Des Weiteren vereinheitlicht PDO die Codesyntax für das Senden von SQL-Statements (Datenbankabfragen basierend auf SQL-Syntax) und das Verarbeiten der erhaltenen Ergebnisrelationen. Hierfür werden entsprechende Methoden bereitgestellt, zum Beispiel

 PDO::beginTransaction() // erstellt eine neue Transaktion
 PDO::prepare()     // erstellt ein neues prepared statement
 PDOStatement::fetch()  // liest die nächste Zeile der Ergebnisrelation ein

Eine vollständige Referenz ist in der offiziellen PHP-Dokumentation enthalten.

Integration

Bearbeiten

PHP Data Objects sind seit PHP 5.1 ein fester Bestandteil der Sprache, weshalb zusätzliches Aktivieren – über die datenbankspezifischen Treiber hinaus – in der Regel nicht erforderlich ist.[2] Da PDO auf den neuen, stärker objektorientierten Ansätzen von PHP 5 aufbaut, ist die Nutzung erst seit dieser Version möglich. Vorher konnte die Software als PECL-Modul genutzt werden.

Siehe auch

Bearbeiten
Bearbeiten

Einzelnachweise

Bearbeiten
  1. http://www.php.net/manual/de/intro.pdo.php
  2. PHP: Installation - Manual. PDO. Abgerufen am 5. Mai 2021.

📚 Artikel Terkait di Wikipedia

Prepared Statement

= ps.executeQuery(); Beispiel eines Prepared Statement in PHP mit PHP Data Objects: <?php $stmt = $dbh->prepare('SELECT user, password FROM tbl_user

MySQLi

Hilfe von sogenannten Prepared Statements SQL-Injection-Angriffe verhindert werden können. ADOdb PHP Data Objects MySQLi-Dokumentation im PHP-Handbuch

Open Data Protocol

freigegeben. OData nutzt Funktionalitäten aus AtomPub und JSON (JavaScript Object Notation) in Verbindung mit REST-Prinzipien. Browser OData-Explorer.

SQL-Injection

PreparedStatement-Objekt mehrfach verwendet. In PHP steht für Datenbankzugriffe die Bibliothek PHP Data Objects zur Verfügung. Beispiel ohne Prepared Statement:

PDO

Development Oman, omanisches Unternehmen zur Erdöl- und Erdgasförderung PHP Data Objects, Abstraktionsebene für den Datenbankzugriff Philips and DuPont Optical

Liste von Programmiersprachen

Pacbase Pascal Pascal Script Pawn PEARL Perl Phalanger Pharo Phoenix Object Basic PHP Piet Pike PILOT PL/0 PL/I PL/M PL/S PL/SQL Plankalkül PostScript POW

Data-URL

Jacobs: Objects, Images, and Applets: Rules for rendering objects. In: HTML 4.01 Specification. W3C, 24. Dezember 1999, abgerufen am 20. März 2008.  data Protocol

CRUD

Plattform gegliedert: Java JDBC JBoss Seam Naked Objects for Java PHP Agavi CakePHP CRUDlex FuelPHP Laravel Qcodo Symfony Zikula Yii TYPO 3 Flow Extbase/Fluid