Was ist der bevorzugte Weg, um von PHP aus eine Verbindung zu einer Postgresql-Datenbank herzustellen?

StackOverflow https://stackoverflow.com/questions/10532

  •  08-06-2019
  •  | 
  •  

Frage

Ich verwende PHP und MySQL schon seit Ewigkeiten und bin dabei, stattdessen PostgreSQL zu verwenden.

Was ist die bevorzugte Methode?

Geht es über die PDO-Objekte oder gibt es etwas Besseres?

War es hilfreich?

Lösung

PDO-Objekte sind der neue Trend.Ich würde dies empfehlen, solange Sie sicherstellen können, dass auf Ihrer Zielplattform immer PHP 5.2+ ausgeführt wird.

Es gibt viele andere Datenbankabstraktionsschichten, die PostgreSQL unterstützen und mit älteren PHP-Versionen kompatibel sind.Ich würde es empfehlen ADODB.

Selbst für Ihre MySQL-Arbeit sollten Sie PDO oder eine andere Abstraktionsschicht verwenden.So wirst du dieses Problem nie wieder haben!

Andere Tipps

Verwendung von Zend Db:

require_once 'Zend/Db.php';
$DB_ADAPTER = 'Pdo_Pgsql';
$DB_CONFIG = array(
    'username' => 'app_db_user',
    'password' => 'xxxxxxxxx',
    'host'     => 'localhost',
    'port'     => 5432,
    'dbname'   => 'mydb'
);
$db = Zend_Db::factory($DB_ADAPTER, $DB_CONFIG);

Ich persönlich verwende PDO für meine gesamte Datenbankarbeit, wenn ich die Wahl habe.Vorbereitete Kontoauszüge machen mir das Leben leichter und es funktioniert nahtlos zwischen Datenbanksystemen – praktisch, wenn Sie mit einem System arbeiten müssen, mit dem Sie nicht vertraut sind.

Wenn Sie Ihre eigene Abstraktion erstellen oder das prozedurale Modell verwenden möchten, finden Sie hier die Postgre-Funktionen: http://ca.php.net/manual/en/ref.pgsql.php

es gibt auch die pg_whatever-Funktionen, aber verwenden Sie sie nicht.

Sie verwenden ältere, nicht gewartete Datenbanktreiber. gU ist der richtige Weg.

Ich würde auch empfehlen, eine geerbte PDO-Klasse oder eine Wrapper-Klasse zu erstellen, wenn Sie sich gegen die Verwendung von PDO entscheiden.Dies würde Ihnen in Zukunft viel mehr Flexibilität bieten.dh.Berechnung der Abfrageausführungszeit.

Abhängig vom Umfang Ihrer Anwendung möchten Sie möglicherweise die Anzahl der Verbindungen zum Backend berücksichtigen.Der Konsens scheint zu sein, dass persistente PHP-Verbindungen und PostgreSQL nicht gut zusammenarbeiten, also so etwas wie pgpool-|| sollte als Vermittler genutzt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top