ホームページ php教程 PHP开发 Zend Framework 入門チュートリアル: Zend_Config コンポーネントの使用法の詳細な説明

Zend Framework 入門チュートリアル: Zend_Config コンポーネントの使用法の詳細な説明

Jan 05, 2017 am 10:33 AM

この記事の例では、Zend Framework での Zend_Config コンポーネントの使用法について説明します。参考として、次のように全員と共有します。

1. PHP 配列からデータを読み取る

Zend_Config_Ini (ini 構成ファイルを読み取る) を使用する
Zend_Config_Xml (XML 構成ファイルを読み取る)

ケース:

<?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>";
ログイン後にコピー

結果:

Web サーバーのアドレス: 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 設定ファイルからデータを読み取ることができます。

ケース:

(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
データベース名は:test_ini

5. XML 構成ファイルからデータを読み取ります

サブクラス Zend_Config_Xml によって実装
ルート要素トップ要素
セクションレベル要素セクション要素
リーフ要素リーフ要素

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

この記事が Zend に基づいた皆様のお役に立てば幸いですフレームワーク PHP プログラミングが役に立ちます。

Zend Framework 入門チュートリアルの Zend_Config コンポーネントの使用法に関する詳細な説明については、PHP 中国語 Web サイトに注目してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)