我使用我的localhost来处理我的项目,但有时我需要将网站放在网上以便为我的客户展示。当我这样做时,我需要更改pdo连接详细信息webhosting的连接细节。
PHP中有没有办法自动完成?我的意思是我在各种连接中创建,如果PDO无法连接到第一个,那么尝试另一个。
$option1 = new PDO('mysql:host=host1;dbname=db1', 'user1', 'pw1');
$option2 = new PDO('mysql:host=host2;dbname=db2', 'user2', 'pw2');
$option3 = new PDO('mysql:host=host3;dbname=db3', 'user3', 'pw3');
我需要一个脚本,它会尝试每个选项,连接到正确的数据库,然后返回一个简单的$ db对象。
答案 0 :(得分:2)
尝试
if ($_SERVER['REMOTE_ADDR'] == '127.0.0.1' or $_SERVER['REMOTE_ADDR'] == '::1')
{
# LOCAL
define('dbhost', 'localhost');
define('dbuser', 'root');
define('dbpassword', '');
define('dbname', 'db');
} else {
# REMOTE
define('dbhost', 'example.com');
define('dbuser', 'remoteUser');
define('dbpassword', 'remotePass');
define('dbname', 'remoteDb');
}
$conn = new PDO('mysql:host='.dbhost.';dbname='.dbname.', '.dbuser.', '.dbpassword);