Maison  >  Article  >  développement back-end  >  À propos de l'utilisation du composant Zend_Config dans Zend Framework

À propos de l'utilisation du composant Zend_Config dans Zend Framework

不言
不言original
2018-06-15 17:13:471178parcourir

Cet article présente principalement l'utilisation du composant Zend_Config dans le tutoriel d'introduction du Zend Framework, et analyse les techniques associées du composant Zend_Config pour différents types de fichiers de configuration sous forme d'exemples. Les amis dans le besoin peuvent se référer aux exemples dans . cet article

Décrit l'utilisation du composant Zend_Config dans Zend Framework. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1. Lire les données du tableau PHP

Utiliser Zend_Config_Ini (lire le fichier de configuration ini)
Zend_Config_Xml (Lire le fichier de configuration XML)

Cas :

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Config&#39;);
$array = array(
  &#39;webhost&#39; => &#39;127.0.0.1&#39;,
  &#39;database&#39;=>array(
    &#39;db_host&#39;=>&#39;localhost&#39;,
    &#39;db_user&#39;=>&#39;root&#39;,
    &#39;db_pass&#39;=>&#39;123&#39;,
    &#39;db_name&#39;=>&#39;test&#39;
    )
  );
$config = new Zend_Config($array);
echo "Web服务器地址为:";
echo $config->webhost;
echo "<p>";
echo "数据库服务器名称为:";
echo $config->database->db_host;
echo "<p>";
echo "数据库用户名为:";
echo $config->database->db_user;
echo "<p>";
echo "数据库密码为:";
echo $config->database->db_pass;
echo "<p>";
echo "数据库名称为:";
echo $config->database->db_name;
echo "<p>";

Résultat :

L'adresse du serveur Web est : 127.0.0.1
Le nom du serveur de base de données est :localhost
Le nom d'utilisateur de la base de données est : root
Le mot de passe de la base de données est : 123
Le nom de la base de données est : test

Remarque :

Lors de l'initialisation de la classe Zend_Config, Les données du tableau deviennent directement la valeur d'attribut de l'objet $config.

2. Lire les données du fichier de configuration PHP

Cas :

(1) Tout d'abord, le fichier de configuration, le code est le suivant.

<?php
return array(
  &#39;webhost&#39; => &#39;127.0.0.1&#39;,
  &#39;database&#39; => array(
    &#39;db_host&#39; => &#39;localhost&#39;,
    &#39;db_user&#39; => &#39;root&#39;,
    &#39;db_pass&#39; => &#39;123&#39;,
    &#39;db_name&#39; => &#39;test&#39;
    )
);

(2) Créez un fichier PHP qui lit la configuration Le code est le suivant.

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Config&#39;);
$filename = &#39;config.php&#39;;            //定义配置文件名
$config = new Zend_Config(require $filename);  //为类实例化对象
echo "Web服务器地址为:";
echo $config->webhost;
echo "<p>";
echo "数据库服务器名称为:";
echo $config->database->db_host;
echo "<p>";
echo "数据库用户名为:";
echo $config->database->db_user;
echo "<p>";
echo "数据库密码为:";
echo $config->database->db_pass;
echo "<p>";
echo "数据库名称为:";
echo $config->database->db_name;
echo "<p>";

Remarque : Le résultat est le même que précédemment, sauf que cette fois les données lues sont obtenues à partir du fichier php. Les informations de configuration généralement requises ne sont rien d'autre que le nom de la base de données, le nom d'utilisateur, le mot de passe, etc.

3. Lire les données du fichier ini

Zend_Config_Ini, une sous-classe du composant Zend_Config, permet de lire les données du fichier de configuration ini.

Cas :

(1) Créez un fichier de configuration ini pour le contenu à lire, le code est le suivant.

[database]
hostname = localhost
database.type = mysql
database.host = localhost
database.user = root
database.pass = 123
database.name = test_ini

Enregistrez-le sous config.ini

(2) Créez un fichier PHP qui lit le contenu du fichier de configuration Le code est le suivant.

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Config_Ini&#39;);
$filename = &#39;config.ini&#39;;            //定义配置文件名
$config = new Zend_Config_Ini($filename,&#39;database&#39;);  //为类实例化对象
echo "数据库服务器名称为:";
echo $config->hostname;
echo "<p>";
echo "数据库类型为:";
echo $config->database->type;
echo "<p>";
echo "数据库用户名为:";
echo $config->database->user;
echo "<p>";
echo "数据库密码为:";
echo $config->database->pass;
echo "<p>";
echo "数据库名称为:";
echo $config->database->name;
echo "<p>";

Remarque : Après avoir instancié l'objet et spécifié les paramètres correspondants, vous pouvez utiliser les informations contenues dans le fichier de configuration.

Le résultat est :

Le nom du serveur de base de données est : localhost
Le type de base de données est : mysql
Le nom d'utilisateur de la base de données est : root
La base de données le mot de passe est : 123
Le nom de la base de données est : test_ini

4 Appelez les données lues dans ini sous la forme d'un tableau

Utilisez toArray. () pour réaliser la conversion

Cas :

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Config_Ini&#39;);
$filename = &#39;config.ini&#39;;            //定义配置文件名
$config = new Zend_Config_Ini($filename,&#39;database&#39;);  //为类实例化对象
$temp = $config->database->toArray();      //使得其中一个属性的数据转为数组,并将数据赋给变量$temp
echo "数据库类型为:";
echo $temp[type];
echo "<p>";
echo "数据库用户名为:";
echo $temp[user];
echo "<p>";
echo "数据库密码为:";
echo $temp[pass];
echo "<p>";
echo "数据库名称为:";
echo $temp[name];
echo "<p>";

Résultat :

Le type de base de données est : mysql
Nom d'utilisateur de la base de données : root
Le mot de passe de la base de données est : 123
Le nom de la base de données est : test_ini

5 Lire les données du fichier de configuration XML

Obtenu via la sous-classe Zend_Config_Xml<.>Élément racine Éléments de niveau supérieur
Éléments de niveau section Éléments de section
Éléments feuille Éléments feuille

Cas :

(1) Créer un fichier XML

<?xml version = &#39;1.0&#39;?>
<config>
  <production>
    <webhost>127.0.0.1</webhost>
    <database>
      <type>pdo_mysql</type>
      <host>localhost</host>
      <username>db_user</username>
      <password>db_pass</password>
      <name>test</name>
    </database>
  </production>
  <stag extends="production">
    <database>
      <host>localhost</host>
      <username>db_user</username>
      <password>db_pass</password>
    </database>
  </stag>
</config>
nommé config .xml

(2) Créez un fichier PHP qui lit les données du fichier XML Le code est le suivant.

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Config_Xml&#39;);
$filename = &#39;config.xml&#39;;            //定义配置文件名
$section = "stag";                //定义需要加载的节名
$config = new Zend_Config_Xml($filename,$section);  //为类实例化对象
echo "服务器地址为:";
echo $config->webhost;
echo "<p>";
echo "数据库类型为:";
echo $config->database->type;
echo "<p>";
echo "数据库用户名为:";
echo $config->database->username;
echo "<p>";
echo "数据库密码为:";
echo $config->database->password;
echo "<p>";
Résultat :

L'adresse du serveur est : 127.0.0.1Le type de base de données est : pdo_mysql
Le nom d'utilisateur de la base de données est : db_user
Le mot de passe de la base de données est :db_pass

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'utilisation de l'url de l'assistant d'action Zend Framework

À propos de l'utilisation de Zend_Db_Table_Rowset dans Zend Framework

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn