php - 选择要运行的数据库连接

标签 php database if-statement pdo

所以我在我的项目中有我的数据库连接。该文件有一个本地请求和一个在线请求,当我在本地主机上工作时,一个被注释掉了。

在 php 中有没有一种方法可以让它查找它必须使用哪个?

比如 if url = localhost/blabla 使用本地 else 在线使用?

这是连接。

try{
    //local connection
    $db = new PDO('mysql:host = 127.0.0.1; dbname=XXXX', 'root','');

    //local online
    //$db = new PDO('mysql:host = XXXXX; dbname=XXXXX', 'xxxxx','*****');

    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
    echo $e->getMessage();
    die();
}
$db->exec("set names utf8");

if (session_status() == PHP_SESSION_NONE) {
    session_start();
}

希望有人能帮忙,谢谢

最佳答案

您不应检查 URL,而应设置一个配置文件。然后在服务器上的 0 上设置 DEVELOPMENT,如果在本地则在 1 上设置。

配置.php

<?php
    define('DEVELOPMENT', 1);
?>

数据库.php

<?php
    if(DEVELOPMENT) {
        // setup your local DB
    } else {
        // setup your live db
    }
?>

关于php - 选择要运行的数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30217456/

相关文章:

php - 使用 Netbeans 部署缩小版本的 JS/CSS

ruby-on-rails - 词词典的数据库设计

mongodb - 使用 Mongo 恢复将集合导入到非本地地址

c# - 允许用户在 Windows 控制台中键入任意数量的字符串,然后显示有关已键入的字符串中的字母数和行号的信息

java - "if"语句有什么问题?

php - PHP 7.2 Amazon Linux 2 上的 DOM 扩展

php - 我可以在发送之前预览 PHP SOAP 要发送的 XML 吗?

PHP-EWS 将电子邮件移动到文件夹

sql - 执行存储在表列中的动态 SQL 语句

Python:如果第一个变量为真,则检查第二个变量?