【发布时间】:2013-01-19 14:52:59
【问题描述】:
我想要一个数据库连接 php 文件,它可以与 localhost 和 web 服务器一起使用。这个想法是如果我在本地主机上使用一些常量,如果我在网络服务器上使用其他常量。
编辑:问题的解决方案是知道我是否在本地主机上的天气。
【问题讨论】:
标签: php database connection webserver localhost
我想要一个数据库连接 php 文件,它可以与 localhost 和 web 服务器一起使用。这个想法是如果我在本地主机上使用一些常量,如果我在网络服务器上使用其他常量。
编辑:问题的解决方案是知道我是否在本地主机上的天气。
【问题讨论】:
标签: php database connection webserver localhost
$local = array('localhost', '127.0.0.1');
if(in_array($_SERVER['HTTP_HOST'], $local)).
{
$pdo = new PDO('mysql:host=localhost;dbname=database', 'user', 'password');
}
else
{
$pdo = new PDO('mysql:host=example.com;dbname=database', 'user', 'password');
}
您应该使用 PDO。这将检查 localhost 和 127.0.0.1
【讨论】:
您真正需要做的是制作针对每个环境进行版本控制的配置文件。您将拥有一个包含数据库连接信息的本地/开发配置文件,然后是另一个用于生产或暂存的配置文件。
您只需将 PHP 应用程序指向适当的配置文件,然后该应用程序就会与正确的数据库机器进行通信。
尝试让应用程序指向多个环境是个坏主意。很快就会很混乱。
【讨论】:
您可以随时查看$_SERVER['HTTP_HOST']。
if ($_SERVER['HTTP_HOST'] == "localhost") {
mysql_connect($host_local, ...);
} else {
mysql_connect($host_web, ...);
}
【讨论】: