Domanda

Sto usando PHP e MySQL per anni e anni e sto per iniziare a utilizzare PostgreSQL, invece.

Qual è il metodo preferito?

È attraverso la DOP oggetti o c'è qualcosa di meglio?

È stato utile?

Soluzione

DOP oggetti sono la nuova fiamma.Mi raccomando, come a lungo come si può garantire che il vostro target di piattaforma sarà sempre l'esecuzione di PHP 5.2+.

Ci sono molti altri database abstraction layer che il supporto a PostgreSQL che sono compatibili con le vecchie versioni di PHP;Mi raccomando ADODB.

Si dovrebbe davvero essere utilizzando DOP o un diverso livello di astrazione anche per MySQL di lavoro;in questo modo non hanno questo problema!

Altri suggerimenti

Utilizzando 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);

Io, personalmente, uso DOP per tutto il mio database di lavoro, quando ho scelta.Istruzioni preparate rendere la mia vita più facile, e non è senza soluzione di continuità tra i sistemi di database - utile se si deve lavorare con uno non ci si è abituati.

Se ti vuoi divertire propria astrazione, o andare con il modello procedurale, ecco il Postgre funzioni: http://ca.php.net/manual/en/ref.pgsql.php

Ci sono anche il pg_whatever funzioni, ma non li uso.

Essi utilizzano vecchie, non più mantenuto i driver di database. DOP è il modo per andare.

Vorrei anche suggerire la creazione di un ereditata DOP classe o di una classe wrapper se si decide di non utilizzare la DOP.Questo sarebbe fornire un sacco di più flessibilità in futuro.ie.Il calcolo del tempo di esecuzione della query.

A seconda delle dimensioni della vostra applicazione, si potrebbe desiderare di prendere in considerazione il numero di connessioni di andare al backend.Il consenso sembra essere che il PHP connessioni persistenti e PostgreSQL non funzionano bene insieme, quindi qualcosa di simile pgpool-|| dovrebbe essere usato come un intermediario.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top