我是PHP的新手,想问一下,宣布应用程序级变量和数据库连接字符串或配置的最佳方法是什么?
我的脚本如何访问这些应用程序级变量?
答案 0 :(得分:12)
将连接信息存储在常量,名为config.php
或类似的文件中是很常见的(在编写本文时)。由于文件内容的敏感性,将此文件存储在Web根目录之外也是一个好主意。
所以你可以在config.php
:
<?php
define('DBHOST', 'localhost');
define('DBUSER', 'root');
define('DBPASS', '');
define('DBNAME', 'your_dbname');
然后在你的脚本中使用:
<?php
require_once('config.php');
$conn = mysql_connect(DBHOST, DBUSER, DBPASS) or die('Could not connect to database server.');
mysql_select_db(DBNAME) or die('Could not select database.');
...
假设您的config.php
与您的脚本位于同一目录中。
答案 1 :(得分:4)
创建一个名为“config.php”的文件并包含在您的脚本中。
//config.php
<?
define("CONN_STRING", "this is my connection string");
define("DEBUG", true);
?>
//any script.php
<?
require_once ('path/to/config.php');
if (DEBUG) {
echo "Testing...";
}
?>
大多数PHP框架已经有一个配置文件,如果你打算使用它,你只需要在那里添加你的变量。
答案 2 :(得分:1)
如果您要用经典的普通样式(不是面向对象)编写PHP代码,您可以在某个PHP文件中声明您的数据库凭据,然后将它们作为全局变量访问。例如:
<强>的config.php 强>
<?php
$db_name = 'mydb';
$db_user = 'webuser';
$dm_pass = 'pass123';
...
<强> somefile.php 强>
<?php
require_once ('config.php');
function db_connect() {
global $dn_name, $db_user, $db_pas
$conn = mysql_connect($dn_name, $db_user, $db_pass);
...
}