php zend框架入门,Zend Framework入门教程之Zend_Config组件用法详解

本文实例讲述了Zend Framework中Zend_Config组件用法。分享给大家供大家参考,具体如下:

1.从PHP数组中读取数据

使用Zend_Config_Ini(读取ini配置文件)

Zend_Config_Xml(读取XML配置文件)

案例:

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 "

";

echo "数据库服务器名称为:";

echo $config->database->db_host;

echo "

";

echo "数据库用户名为:";

echo $config->database->db_user;

echo "

";

echo "数据库密码为:";

echo $config->database->db_pass;

echo "

";

echo "数据库名称为:";

echo $config->database->db_name;

echo "

";

结果:

Web服务器地址为:127.0.0.1

数据库服务器名称为:localhost

数据库用户名为:root

数据库密码为:123

数据库名称为:test

说明:

初始化Zend_Config类时,将数组中的数据直接变成$config对象的属性值了。

2.从PHP配置文件读取数据

案例:

(1)首先是配置文件,代码如下。

return array(

'webhost' => '127.0.0.1',

'database' => array(

'db_host' => 'localhost',

'db_user' => 'root',

'db_pass' => '123',

'db_name' => 'test'

)

);

(2)创建读取配置的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 "

";

echo "数据库服务器名称为:";

echo $config->database->db_host;

echo "

";

echo "数据库用户名为:";

echo $config->database->db_user;

echo "

";

echo "数据库密码为:";

echo $config->database->db_pass;

echo "

";

echo "数据库名称为:";

echo $config->database->db_name;

echo "

";

说明:结果同之前的一样,只是这次读取数据是从php文件中获取的。一般需要的配置信息,无非是数据库名,用户名,密码等。

3.从ini文件中读取数据

Zend_Config组件的子类Zend_Config_Ini允许从ini配置文件中读取数据。

案例:

(1)建立一个用于被读取内容的ini配置文件,代码如下。

[database]

hostname = localhost

database.type = mysql

database.host = localhost

database.user = root

database.pass = 123

database.name = test_ini

保存为config.ini

(2)建立读取配置文件内容的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 "

";

echo "数据库类型为:";

echo $config->database->type;

echo "

";

echo "数据库用户名为:";

echo $config->database->user;

echo "

";

echo "数据库密码为:";

echo $config->database->pass;

echo "

";

echo "数据库名称为:";

echo $config->database->name;

echo "

";

说明:实例化对象之后,指定相应的参数,就可以使用配置文件中的信息了。

结果为:

数据库服务器名称为:localhost

数据库类型为:mysql

数据库用户名为:root

数据库密码为:123

数据库名称为:test_ini

4.以数组的形式调用ini中读出的数据

用toArray()方法来实现转化

案例:

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 "

";

echo "数据库用户名为:";

echo $temp[user];

echo "

";

echo "数据库密码为:";

echo $temp[pass];

echo "

";

echo "数据库名称为:";

echo $temp[name];

echo "

";

结果:

数据库类型为:mysql

数据库用户名为:root

数据库密码为:123

数据库名称为:test_ini

5.从XML配置文件中读取数据

通过子类Zend_Config_Xml来实现

root element 顶级元素

section-level elements节元素

leaf elements 叶元素

案例:

(1)创建一个XML文件

127.0.0.1

pdo_mysql

localhost

db_user

db_pass

test

localhost

db_user

db_pass

命名为config.xml

(2)建立读取XML文件数据的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 "

";

echo "数据库类型为:";

echo $config->database->type;

echo "

";

echo "数据库用户名为:";

echo $config->database->username;

echo "

";

echo "数据库密码为:";

echo $config->database->password;

echo "

";

结果:

服务器地址为:127.0.0.1

数据库类型为:pdo_mysql

数据库用户名为:db_user

数据库密码为:db_pass

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值