从 PHP 连接到 postgresql 数据库的首选方式是什么?
-
08-06-2019 - |
题
我已经使用 PHP 和 MySQL 很长时间了,现在即将开始使用 PostgreSQL。
首选方法是什么?
是通过 PDO 对象还是有更好的东西?
解决方案
PDO 对象是新的热点。我建议您只要能确保您的目标平台始终运行 PHP 5.2+ 即可。
还有许多其他支持 PostgreSQL 的数据库抽象层与旧版本的 PHP 兼容;我会推荐 阿多数据库.
即使对于 MySQL 工作,您也确实应该使用 PDO 或不同的抽象层;这样你就不会再遇到这个问题了!
其他提示
使用 Zend 数据库:
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);
就我个人而言,当我有选择时,我会使用 PDO 来完成所有数据库工作。准备好的语句使我的生活变得轻松,并且它在数据库系统之间是无缝的 - 如果您必须使用您不习惯的系统,这会很方便。
如果您想推出自己的抽象,或者使用过程模型,请使用以下 Postgre 函数: http://ca.php.net/manual/en/ref.pgsql.php
还有 pg_whatever 函数, ,但不要使用它们。
他们使用较旧的、未维护的数据库驱动程序。 磷酸二氢钾 是要走的路。
如果您决定不使用 PDO,我还建议创建一个继承的 PDO 类或包装类。这将为您将来提供更大的灵活性。IE。计算查询执行时间。
根据应用程序的规模,您可能希望考虑到后端的连接数量。共识似乎是 PHP 持久连接和 PostgreSQL 不能很好地协同工作,所以像 pgpool-|| 应该作为中介使用。
不隶属于 StackOverflow