>  기사  >  백엔드 개발  >  Zend Framework의 Zend_Config 구성 요소 사용에 대해

Zend Framework의 Zend_Config 구성 요소 사용에 대해

不言
不言원래의
2018-06-15 17:13:471214검색

이 글은 Zend Framework 입문 튜토리얼에서 주로 Zend_Config 컴포넌트의 사용법을 소개하고, 다양한 유형의 구성 파일에 대한 Zend_Config 컴포넌트 관련 기술을 예제 형식으로 분석합니다. 도움이 필요한 친구들이 참고할 수 있습니다.

이 글은 구성요소 사용 예시와 함께 Zend Framework의 Zend_Config를 설명합니다. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

1. PHP 배열에서 데이터 읽기

Zend_Config_Ini 사용(ini 구성 파일 읽기)
Zend_Config_Xml(XML 구성 파일 읽기)

Case:

<?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>";

결과:

웹 서버 주소: 127.0.0.1
데이터베이스 서버 이름: localhost
데이터베이스 사용자 이름: root
데이터베이스 비밀번호: 123
데이터베이스 이름: test

설명:

Zend_Config 클래스를 초기화하는 경우 , 배열의 데이터는 $config 객체의 속성 값이 됩니다.

2. PHP 구성 파일에서 데이터 읽기

사례:

(1) 첫 번째는 구성 파일이며 코드는 다음과 같습니다.

<?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) 구성을 읽는 PHP 파일을 생성합니다. 코드는 다음과 같습니다.

<?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>";

설명: 이번에는 읽은 데이터를 php 파일에서 가져오는 것을 제외하면 결과는 이전과 동일합니다. 일반적으로 필요한 구성 정보는 데이터베이스 이름, 사용자 이름, 비밀번호 등뿐입니다.

3. ini 파일에서 데이터 읽기

Zend_Config 구성 요소의 하위 클래스 Zend_Config_Ini를 사용하면 ini 구성 파일에서 데이터를 읽을 수 있습니다.

Case:

(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 파일을 생성합니다. 코드는 다음과 같습니다.

<?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>";

참고: 개체를 인스턴스화하고 해당 매개변수를 지정한 후 구성 파일의 정보를 사용할 수 있습니다.

결과는 다음과 같습니다.

데이터베이스 서버 이름: localhost
데이터베이스 유형: mysql
데이터베이스 사용자 이름: root
데이터베이스 비밀번호: 123
데이터베이스 이름: test_ini

4. 배열 ini

에서 읽은 데이터는 toArray() 메서드를 사용하여 변환을 수행합니다.

케이스:

<?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>";

결과:

데이터베이스 유형: mysql
데이터베이스 사용자 이름: root
데이터베이스 비밀번호: 123
데이터베이스 이름 For: test_ini

5 XML 구성 파일

에서 데이터를 읽는 것은 Zend_Config_Xml
root 요소 top 요소
섹션 수준 요소 section 요소
leaf 요소 leaf 요소

Case:

( 1 ) 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>

이름을 config.xml

(2) XML 파일 데이터를 읽는 PHP 파일을 생성합니다. 코드는 다음과 같습니다.

<?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>";

결과:

서버 주소: 127.0.0.1
데이터베이스 유형: pdo_mysql
데이터베이스 사용자 이름: db_user
데이터베이스 비밀번호: db_pass

위는 이 글의 전체 내용입니다. , 모든 분들의 학습에 도움이 되기를 바랍니다. 도움이 필요하시면 PHP 중국어 웹사이트에서 더 많은 관련 콘텐츠를 확인하시기 바랍니다!

관련 권장 사항:

Zend Framework 작업 도우미 Url 사용 정보

Zend Framework의 Zend_Db_Table_Rowset 사용 정보

위 내용은 Zend Framework의 Zend_Config 구성 요소 사용에 대해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.