【发布时间】:2012-02-23 18:27:02
【问题描述】:
我正在尝试将一些 PHP 代码从 Mysqli 转换为 PDO,并且我需要能够为 PDO MySQL 连接设置默认主机(在我的应用程序代码之外)。
使用 Mysqli,我可以通过 php.ini 设置做到这一点:
mysqli.default_host = ip.of.mysql.server
然后连接:
$link = mysqli_connect(null, USERNAME, PASSWORD, DATABASE);
对我们来说效果很好。
PDO 的等效代码:
$link = new PDO('mysql:dbname=' . DATABASE, USERNAME, PASSWORD);
工作方式不同。只要我的 MySQL 服务器在本地主机上,它就可以工作。它不是。我有一台单独的机器来托管我的 MySQL 服务器。
是否有等效的 php.ini 设置可以完成我对 PDO 的需求?我发现的最接近的东西是 pdo_mysql.default_socket 设置,但我认为不会这样做。
【问题讨论】:
-
您可以使用主机并更改主机文件中的 IP 地址。这在应用程序代码之外。
-
对我来说似乎有点 hacky,但如果没有官方的方法可以做到这一点,我可能会这样做。
标签: php mysql pdo mysqli php-ini