2014年3月18日火曜日

PHP: parse_ini_file() で ini ファイルを読み込む

PHP でアプリケーションの設定を保存しておくためには、
外部ファイルとして設定情報を保存しておいたり
データベースに設定値を保存しておいたりする方法がある。

外部ファイルとして設定情報を保存する場合は、
config.php のようなファイルを作って、
変数や定数として設定情報を定義しておき、
メインのプログラムから参照する方法がある。

データベースのパスワードやホスト名など、
インストールする環境ごとに設定値を変える場合には、
config_base.php などのテンプレートを準備しておき、
それをコピー・編集して config.php として保存してもらう方法などがある。

PHP では ini ファイルをロードする parse_ini_file() があるため、
こちらを使用してもよい。

parse_ini_file - PHP
http://jp2.php.net/manual/ja/function.parse-ini-file.php

parse_ini_file は php.ini と同じフォーマットの設定ファイルを読み込み、
連想配列として返してくれる。

たとえば以下の様な ini ファイルを読み込んだ場合
; データベースの設定
[db]
user = yokano
pass = password
host = localhost
dbname = mydb

; アプリの設定
[app]
path = /var/www/html/app
admin = yokano
debug = true

<?php

$config = parse_ini_file('config.ini', true);
var_dump($config);

?>

このように取得できる。
array(2) { ["db"]=> array(4) { ["user"]=> string(6) "yokano" ["pass"]=> string(8) "password" ["host"]=> string(9) "localhost" ["dbname"]=> string(4) "mydb" } ["app"]=> array(3) { ["path"]=> string(17) "/var/www/html/app" ["admin"]=> string(6) "yokano" ["debug"]=> string(1) "1" } }

0 件のコメント:

コメントを投稿