繁体   English   中英

我如何从另一个PHP文件获取数据库详细信息?

[英]how can i get the database details from another php file?

请让我知道如何在Laravel中获取config/database.php文件

对于考试:我在root文件夹中有一个名为test.php的文件,我想要config/database.php的数据库,主机,用户名和密码。我该如何做到这一点?

'connections' => array(

'mysql' => array(
    'driver'    => 'mysql',
    'host'      => '*********',
    'database'  => '********',
    'username'  => '********',
    'password'  => '*******',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
),
),

如果使用MySQL,则要获取数据库连接参数(服务器,用户名,密码等),可以执行以下操作:

echo "Driver: " . Config::get('database.connections.mysql.driver') . "<br/>\r\n";
echo "Host: " . Config::get('database.connections.mysql.host') . "<br/>\r\n";
echo "Database: " . Config::get('database.connections.mysql.database') . "<br/>\r\n";
echo "Username: " . Config::get('database.connections.mysql.username') . "<br/>\r\n";
echo "Password: " . Config::get('database.connections.mysql.password') . "<br/>\r\n";

在我的本地开发计算机上,这给出了:

驱动程序:mysql

主机:localhost

数据库:local_dev_db

用户名:root

密码:not-my-real-pwd

...显然,您绝对不应该在实时应用程序中显示密码(或其他任何详细信息)! 但是,如果仅是为了在本地开发计算机上提供信息,则应该没问题。

如果您不使用MySQL,只需用sqlite或pgsql或其他替换mysql。

试试吧

在您的test.php文件中编写以下代码

$config  =(include './app/config/database.php');

$default_database = $config['default'];
$database_config = $config['connections'][$default_database];

echo "host = ".$database_config['host']."<br>";
echo "database = ".$database_config['database']."<br>";
echo "username = ".$database_config['username']."<br>";
echo "password = ".$database_config['password']."<br>";

输出值

主机=本地主机

数据库=测试

用户名=根

密码= 123456

希望您满意。

在laravel 5中,您可以使用以下命令获取这些详细信息: DB::connection()->getConfig("password")

BTW Laravel已经为您连接到数据库。 应用程序中无需显式获取这些详细信息并进行自我连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM