PHP PDO多个数据库连接选项

时间:2015-08-03 10:55:59

标签: php mysql pdo

我使用我的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对象。

1 个答案:

答案 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);