2008-08-14 32 views

回答

4

PDO对象是新的热点。我建议只要你能确保你的目标平台总是运行PHP 5.2+。

还有很多其他数据库抽象层支持PostgreSQL,它们与旧版本的PHP兼容;我推荐ADODB

即使对于您的MySQL工作,您也应该使用PDO或其他抽象层;这样你就不会再有这个问题了!

1

我个人使用PDO来处理所有数据库工作,当我有选择时。准备好的陈述让我的生活变得简单,并且它在数据库系统之间是无缝的 - 如果你必须使用一个你不习惯的工作,那么这很方便。

如果你想推出自己的抽象,或与程序模型去,这里的Postgre功能:http://ca.php.net/manual/en/ref.pgsql.php

0

我还建议建立一个继承PDO类或包装类,如果你决定不使用PDO 。这将为您在未来提供更多的灵活性。即。计算查询执行时间。

2

使用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); 
0

根据应用程序的规模,您不妨考虑去连接到后端的数量。共识似乎是PHP持久连接和PostgreSQL不能很好地协同工作,所以应该使用类似pgpool-||作为中介。

1

还有the pg_whatever functions,但不要使用它们。

他们使用旧的,无人维护的数据库驱动程序。 PDO是要走的路。

相关问题