在 PHP 中创建配置文件

Subodh Poudel 2023年1月30日
  1. 将配置存储在 PHP 文件中的数组中
  2. 将数组配置类型转换为 PHP 文件中的对象
  3. 在 PHP 中使用 INI 文件创建配置文件
在 PHP 中创建配置文件

本文将介绍一些在 PHP 中创建配置文件的方法。

将配置存储在 PHP 文件中的数组中

我们可以在 PHP 中创建一个配置项数组来形成一个配置文件。

关联数组最适合存储配置数据。该文件可以包含在另一个 PHP 文件中,并且可以使用配置。

我们可以使用 include() 函数来获取配置文件。我们将演示在 PHP 中为数据库连接创建配置文件。

例如,创建一个 PHP 文件 config.php 并创建一个数组。在数组中写入键主机名用户名密码

hostname 设置为 localhostusername 并将 password 设置为你的数据库用户名和密码。然后返回数组。

接下来,创建另一个文件 DB.php,并使用 include() 函数包含 config.php 文件并将其存储在 $conf 变量中。创建变量 $hostname$username$password$db 以分配配置。

将配置存储在访问 $conf 变量的每个数组项的变量中。在 $db 变量中设置你的数据库名称。使用 mysqli_connect() 函数连接服务器和数据库。

将我们在上面创建的变量作为参数提供给 mysqli_connect() 函数。如果 config.php 文件中提供了正确的配置,下面的示例将连接服务器和数据库。

这样,我们就可以在 PHP 中使用数组来创建配置文件。

return array(
 'hostname' => 'localhost',
 'username' => 'root',
 'password' => 'pass123'
);
$conf = include('config.php');

$hostname = $conf['hostname'];
$username = $conf['username'];
$password = $conf['password'];
$db = "my_db";

$con = mysqli_connect($hostname, $username, $password,$db);

if (!$con) {
die("Failed to establish connection");
}
echo "Connection established successfully";

输出:

Connection established successfully

将数组配置类型转换为 PHP 文件中的对象

此方法会将 config.php 文件中的数组类型转换为对象。通过这种方式,可以将配置作为 PHP 文件中的对象进行访问。

此外,我们可以从对象中获得好处以进行数据处理。例如,如果我们使用 JavaScript,对象可以很容易地通过 JSON 传递到客户端。

例如,对数组进行类型转换,将 (object) 放在 array 函数之前 return 关键字之后。然后,在 index.php 中,以 $conf->hostname 访问配置,如下例所示。

return (object) array (
 'hostname' => 'localhost',
 'username' => 'root',
 'password' => 'subodh',
 'db' => 'oop'
);
$conf = include('config.php');

$hostname = $conf->hostname;
$username = $conf->username;
$password = $conf->password;
$db = $conf->db;

$con = mysqli_connect($hostname, $username, $password,$db);

if (!$con) {
die("Failed to establish connection");
}
echo "Connection established successfully";

在 PHP 中使用 INI 文件创建配置文件

我们还可以使用 PHP 中的 INI 文件创建配置文件。我们可以将所有配置存储在 INI 文件中,并使用 parse_ini_file() 函数访问 PHP 文件中的这些配置。

INI 文件被广泛用作配置文件。该文件的结构包含键值对。

parse_ini_file 将 INI 文件的内容加载为关联数组。我们将演示如何创建 INI 配置文件以建立与服务器和数据库的连接。

例如,创建一个文件 config.ini 并写入键 hostnameusernamepassworddb。然后,编写正确的配置。一个例子如下所示。

hostname = 'localhost'
username = 'root'
password = 'pass1234'
db = 'my_db'

接下来,创建一个 index.php 文件并在其中创建一个 $ini 变量。

使用 parse_ini_file() 函数来解析 config.ini 文件。 $ini 变量包含配置的关联数组。

现在使用带有正确参数的 mysqli_connect() 函数来建立连接,就像我们上面所做的那样。

$ini = parse_ini_file('config.ini');

$hostname = $ini['hostname'];
$username = $ini['username'];
$password = $ini['password'];
$db = $ini['db'];

$con = mysqli_connect($hostname, $username, $password,$db);

if (!$con) {
die("Failed to establish connection");
}
echo "Connection established successfully";

输出:

Connection established successfully

需要注意的是,INI 文件应该保存在非公共文件夹中,这样我们就不会遇到任何安全问题。这样,我们就可以创建一个带有 INI 文件的配置文件。

作者: Subodh Poudel
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn