Zend Framework での Zend_Config コンポーネントの使用法について

不言
リリース: 2023-04-01 12:02:01
オリジナル
1115 人が閲覧しました

この記事では、Zend Framework の入門チュートリアルでの Zend_Config コンポーネントの使用法を主に紹介し、さまざまな種類の構成ファイルに対する Zend_Config コンポーネントの関連テクニックを例の形式で分析します。この記事

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

1. PHP 配列からデータを読み取ります。

Zend_Config_Ini を使用します (ini 設定ファイルを読み取ります)
Zend_Config_Xml (読み取ります)。 XML 構成ファイル)

ケース:

 '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) まず設定ファイルです。コードは次のとおりです。

 '127.0.0.1',
  'database' => array(
    'db_host' => 'localhost',
    'db_user' => 'root',
    'db_pass' => '123',
    'db_name' => 'test'
    )
);
ログイン後にコピー

(2) 設定を読み取るための PHP ファイルを作成します。コードは次のとおりです。

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

Save as config.ini

(2) 設定ファイルの内容を読み取るPHPファイルを作成します。 コードは次のとおりです。

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 を使用します。 () 変換を実現するメソッド

ケース:

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
ルート要素のトップ要素
セクションレベルの要素セクション要素
リーフ要素リーフ要素

ケース:

(1)XML ファイルの作成



  
    127.0.0.1
    
      pdo_mysql
      localhost
      db_user
      db_pass
      test
    
  
  
    
      localhost
      db_user
      db_pass
    
  
ログイン後にコピー

named config.xml

(2) XML ファイルのデータを読み込む PHP ファイルを作成します。 コードは次のとおりです。

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

以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

Zend Framework アクション アシスタント URL の使用法について

Zend Framework での Zend_Db_Table_Rowset の使用法について

以上がZend Framework での Zend_Config コンポーネントの使用法についての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!