<?php
/**
*
* PHP配列によるデフォルトの設定プロバイダ
*
* PHP version 5
*
* @package    config_providers
* @author     stk2k <stk2k@sazysoft.com>
* @copyright  2008 stk2k, sazysoft
*/
class PhpConfigProvider extends Object implements IConfigProvider
{

	/*
	 *    コンストラクタ
	 */
	public function __construct()
	{
		parent::__construct();
	}

	/**
	 * 設定プロバイダ名
	 *
	 * @access    public
	 * @return    String
	 */
	public function getProviderName()
	{
		return "Default Config Provider";
	}

	/**
	 *　設定をロード
	 *
	 * @access    public
	 * @param     config_name 設定名
	 */
	public function load( $config_root, $config_name )
	{
		log_info( "config",  "設定ファイル[$config_name]を読み込みます。", __FILE__, __LINE__ );

		$config_file = $config_root . '/' . "$config_name.php";

//print "config_file:$config_file<BR>";
		if ( !is_file($config_file) ){			
			log_info( "config",  "設定ファイル[$config_file]は存在しません。", __FILE__, __LINE__ );
			return NULL;
		}

		// 設定スクリプト内での出力はすべて破棄する
//		ob_start();

		include ( $config_file );

//		ob_end_clean();
	
//print System::arrayToString($config) . "<BR>";

		log_info( "config",  "設定ファイル[$config_name]を読み込みました。", __FILE__, __LINE__ );

		return $config;
	}

}
return __FILE__;
