私は長年にわたってPHP &を使用してきましたが、代わりにPostgreSQLの使用を開始しようとしています。PHPからpostgresqlデータベースに接続するには、どのような方法が適していますか?
どのような方法が適していますか?
PDOオブジェクトを経由しているのですか、それとも良いものがありますか?
私は長年にわたってPHP &を使用してきましたが、代わりにPostgreSQLの使用を開始しようとしています。PHPからpostgresqlデータベースに接続するには、どのような方法が適していますか?
どのような方法が適していますか?
PDOオブジェクトを経由しているのですか、それとも良いものがありますか?
PDOオブジェクトは新しい暑さです。私はあなたのターゲットプラットフォームが常にPHP 5.2+を実行することを保証できる限り、それをお勧めします。
PostgreSQLをサポートする他の多くのデータベース抽象化レイヤーが、旧バージョンのPHPと互換性があります。 ADODBをお勧めします。
MySQLの作業でも、実際にはPDOや別の抽象レイヤーを使用する必要があります。あなたはこの問題をもう一度は持ちません!
個人的には、選択した場合、私のすべてのデータベース作業にPDOを使用します。準備されたステートメントは、私の人生を楽にし、データベースシステム間でシームレスです。使い慣れていないもので作業しなければならないと便利です。
独自の抽象化をロール、または手続きのモデルと一緒に行きたい場合は、ここでPostgre機能があります:http://ca.php.net/manual/en/ref.pgsql.php
あなたはPDOを使用しないと決めた場合、私はまた、継承されたPDOクラスやラッパークラスを作成することをお勧め。これにより、将来さらに多くの柔軟性が提供されます。すなわち、クエリ実行時間の計算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);
は、アプリケーションの規模に応じて、バックエンドに行くの接続数を考慮することを望むかもしれません。 PHPの永続的な接続とPostgreSQLはうまく連携していないと思われるので、pgpool-||のようなものを仲介者として使用する必要があります。
the pg_whatever functionsもありますが、使用しないでください。
旧式のメンテナンスされていないデータベースドライバを使用します。 PDOは行く方法です。