有没有办法自动调整数据库名称,用户名和密码

时间:2017-08-17 18:49:19

标签: php mysql

我目前正在使用PHP和mysql为数据库建立一个网站。我非常喜欢在本地服务器和WAMP之间进行调试并发送到实时服务器。所以我想知道是否有办法根据网站所在的服务器自动调整数据库名称,用户名和密码。目前,我只是手动操作,但我一直忘记它,它变得烦人,特别是因为我每天上传到实时服务器几次让我的朋友测试。 我尝试使用$_SERVER['REMOTE_ADDR']但由于某种原因,它不起作用。你们有没有任何解决方案,还是我应该继续手动完成?

3 个答案:

答案 0 :(得分:1)

有几种方法可以解决这个问题。

  • 使用gethostname检查服务器名称,并根据该名称切换凭据。
  • 使用凭据在每台服务器上创建一个文件,名称/路径相同。上传到实时服务器时不要更新该文件。

如果您的代码允许使用.env等环境文件,请使用该文件。

答案 1 :(得分:0)

创建一个文件,用服务器设置说/doc/root/path/.env。从中获取mysql凭证,不要使用其余代码更新它。

.env用于本地服务器,.env用于生产服务器。

MYSQL_USER=user
MYSQL_PASSWD=passwd
MYSQL_DB=dbname

<?php
$config = parse_ini_file('./.env');

答案 2 :(得分:0)

有一个包含两个状态的环境类,即生产和开发。对于每个州,输入不同的数据库凭证。在我的情况下,我在环境类中有一个常量,表明我是否在生产中。 。常量是布尔值true或false。例如

环境::生产

生产常量将是布尔值..

如果在生产中,它使用生产凭证,否则使用开发,反之亦然。您可以将凭据存储在.ini文件或php文件中。如果是前者,请确保该文件在文档根目录

之外