


The example in this article describes the usage of Zend_Config component in Zend Framework. Share it with everyone for your reference, as follows:
1. Read data from PHP array
Use Zend_Config_Ini (read ini configuration file)
Zend_Config_Xml (read XML configuration file )
Case:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Config'); $array = array( 'webhost' => '127.0.0.1', 'database'=>array( 'db_host'=>'localhost', 'db_user'=>'root', 'db_pass'=>'123', 'db_name'=>'test' ) ); $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>";
Result:
Web server address is: 127.0.0.1
Database server name For: localhost
The database user name is: root
The database password is: 123
The database name is: test
Description:
When initializing the Zend_Config class, add it to the array The data directly becomes the attribute value of the $config object.
2. Read data from the PHP configuration file
Case:
(1) First is the configuration file, the code is as follows.
<?php return array( 'webhost' => '127.0.0.1', 'database' => array( 'db_host' => 'localhost', 'db_user' => 'root', 'db_pass' => '123', 'db_name' => 'test' ) );
(2) Create a PHP file that reads the configuration, the code is as follows.
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Config'); $filename = 'config.php'; //定义配置文件名 $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>";
Explanation: The result is the same as before, except that this time the read data is obtained from the php file. The generally required configuration information is nothing more than database name, user name, password, etc.
3. Read data from the ini file
The subclass Zend_Config_Ini of the Zend_Config component allows reading data from the ini configuration file.
Case:
(1) Create an ini configuration file for the content to be read, the code is as follows.
[database] hostname = localhost database.type = mysql database.host = localhost database.user = root database.pass = 123 database.name = test_ini
Save it as config.ini
(2) Create a PHP file that reads the contents of the configuration file. The code is as follows.
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Config_Ini'); $filename = 'config.ini'; //定义配置文件名 $config = new Zend_Config_Ini($filename,'database'); //为类实例化对象 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>";
Note: After instantiating the object, specify the corresponding parameters, and then you can use the information in the configuration file.
The result is:
The database server name is: localhost
The database type is: mysql
The database user name is: root
The database password is: 123
Database The name is: test_ini
4. Call the data read in ini in the form of an array
Use toArray() method to achieve conversion
Case:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Config_Ini'); $filename = 'config.ini'; //定义配置文件名 $config = new Zend_Config_Ini($filename,'database'); //为类实例化对象 $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>";
Result:
The database type is: mysql
The database user name is: root
The database password is: 123
The database name is :test_ini
5. Read data from XML configuration file
Achieved through subclass Zend_Config_Xml
root element top element
section-level elements section element
leaf elements leaf element
Case:
(1) Create an XML file
<?xml version = '1.0'?> <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>
Name it config.xml
(2) Create a PHP file that reads XML file data. The code is as follows.
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Config_Xml'); $filename = 'config.xml'; //定义配置文件名 $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>";
Result:
The server address is: 127.0.0.1
The database type is: pdo_mysql
The database user name is: db_user
The database password is: db_pass
I hope this article will be helpful to everyone’s PHP programming based on the Zend Framework framework.
For more detailed explanations on the usage of the Zend_Config component in the Zend Framework introductory tutorial, please pay attention to the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment
