Was ist der Unterschied zwischen MySQL, MySQLi und PDO?Was ist der Unterschied zwischen MySQL, MySQLi und PDO?
Welches ist am besten für die Verwendung mit PHP-MySQL geeignet?
Was ist der Unterschied zwischen MySQL, MySQLi und PDO?Was ist der Unterschied zwischen MySQL, MySQLi und PDO?
Welches ist am besten für die Verwendung mit PHP-MySQL geeignet?
sind diese verschiedenen APIs eine MySQL-Backend für den Zugriff auf
Es hängt also davon ab, welche Art von Code Sie produzieren möchten. Wenn Sie objektorientierte Schichten oder einfache Funktionen bevorzugen ...
Mein Rat wäre,
Auch mein Gefühl, die MySQL API würde wahrscheinlich in zukünftigen Versionen von PHP
gelöscht werden.
mysqli ist die erweiterte Version von mysql.
PDO extension definiert eine leichte, konsistente Schnittstelle für den Zugriff auf Datenbanken in PHP. Jeder Datenbanktreiber, der die PDO-Schnittstelle implementiert, kann datenbankspezifische Funktionen als reguläre Erweiterungsfunktionen verfügbar machen.
Kopieren von der manuellen Datei ist nicht sehr nützlich. – XuDing
Es gibt (mehr als) drei beliebte Möglichkeiten, MySQL von PHP zu verwenden.
Ich würde empfehlen, PDO mit vorbereiteten Anweisungen zu verwenden. Es ist eine gut gestaltete API und ermöglicht es Ihnen, einfacher in eine andere Datenbank (einschließlich aller, die ODBC unterstützt) zu verschieben.
Es gibt oft die Verwirrung, dass Sie für prozedurale Funktionen mysql _ *() verwenden müssen, wobei Sie für OO mysqli verwenden! Fakt ist, dass mysqli die frühe (PHP 4) Implementierung von mysql vollständig ersetzt. Es ist möglich, sowohl den prozeduralen Stil als auch den OO one mit mysqli zu verwenden. –
@Patrick, danke. Ich habe das korrigiert. –
Es gibt einen table Vergleich der 3 API-Funktionen. Verwenden Sie Mysqli, wann immer es möglich ist, ebenso wie das neueste, das nach PDO eingeführt wurde und in Zukunft besser gepflegt wird.
Das ist einfach falsch. 'mysqli' und' PDO' wurden für PHP 5.0 veröffentlicht (http://www.php.net/manual/en/mysqli.overview.php). Und Sie haben keine Grundlage dafür angegeben, dass die PDO nicht beibehalten wird. –
Ich habe das nicht vorgeschlagen. PDO und MySQL haben unterschiedliche Funktionen und wahrscheinlich werden beide beibehalten. PDO MAIN FEATURE ist die konsistente API über verschiedene Treiber, wobei mysql nur einer von ihnen ist. –
Insbesondere stellt die MySQLi Erweiterung folgende äußerst nützliche Vorteile gegenüber der alten Erweiterung MySQL ..
OOP-Schnittstelle (zusätzlich zu dem Verfahren) Prepared Statement Unterstützung Transaktion + Stored Procedure Unterstützung Nicer Syntax Verbesserungen in der Geschwindigkeit Verbesserte Debugging
PDO-Erweiterung
PHP Data Objects Erweiterung ist eine Datenbank-Abstraktionsschicht. Insbesondere ist dies keine MySQL-Schnittstelle, da sie Treiber für viele Datenbank-Engines bereitstellt (natürlich einschließlich MYSQL).
PDO zielt darauf ab, eine konsistente API bereitzustellen, das heißt, wenn ein Datenbankmodul geändert wird, sollte der Code so geändert werden, dass er minimal ist. Wenn Sie PDO verwenden, funktioniert Ihr Code normalerweise einfach über viele Datenbank-Engines hinweg, indem Sie einfach den verwendeten Treiber ändern.
Neben der datenbankübergreifenden Kompatibilität unterstützt PDO auch vorbereitete Anweisungen, gespeicherte Prozeduren und mehr, während der MySQL-Treiber verwendet wird.
Einfach gesagt können wir sagen, dass die MySQL Improved Extension verschiedene Vorteile bietet. Die Erweiterung mysqli erlaubt Ihnen den Zugriff auf die Funktionen von MySQL 4.1 und höher.
Die Erweiterung PHP Data Objects (PDO) definiert eine leichtgewichtige, konsistente Schnittstelle für den Zugriff auf Datenbanken in PHP. Jeder Datenbanktreiber, der die PDO-Schnittstelle implementiert, kann datenbankspezifische Funktionen als reguläre Erweiterungsfunktionen verfügbar machen. Beachten Sie, dass Sie mit der PDO-Erweiterung keine Datenbankfunktionen ausführen können. Sie müssen einen datenbankspezifischen PDO-Treiber verwenden, um auf einen Datenbankserver zuzugreifen.
Große Erklärung :) danke –
Es ist nicht mehr ein Gefühl: PHP7 entfernt mysql API, PDO und mysqli –