CakePHPのDBの切替
開発環境によってDB情報を切り替える方法。

開発をしているといろいろ環境によってDBの情報が違うことがあります。
その時使ったDBの切り替え方法です。
config/database.phpのDATABASE_CONFIGクラスにコンストラクタを追加して
そこで切り替えられるようにしてみました。
切り替える条件は$_SERVER[‘SERVER_ADDR’]や、$_SERVER[‘HTTP_HOST’]などの信頼できる情報を用いてます。
頻繁にバックアップで同期する場合など除外せずにまるまる同期できるので、
便利です。

class DATABASE_CONFIG {
	 
	 var $default;
	 
	 function __construct(){
	 
	  if($_SERVER['信用できる値']=="☆☆☆☆"){
	  
	   $this->default = array(
	   'driver' => 'mysqli',
	   'persistent' => false,
	   'host' => 'localhost',
	   'login' => '☆☆☆☆',
	   'password' => '☆☆☆☆',
	   'database' => '☆☆☆☆',
	   'encoding' => 'utf8',
	   'prefix' => '',
	   );
	  
	  }else if($_SERVER['信用できる値'']=="☆☆☆☆"){
	  
	   $this->default = array(
	   'driver' => 'mysqli',
	   'persistent' => false,
	   'host' => 'localhost',
	   'login' => '☆☆☆☆',
	   'password' => '☆☆☆☆',
	   'database' => '☆☆☆☆',
	   'encoding' => 'utf8',
	   'prefix' => '',
	   );
	  
	  }else if($_SERVER['信用できる値'']=="☆☆☆☆"){
	  
	   $this->default = array(
	   'driver' => 'mysqli',
	   'persistent' => false,
	   'host' => 'localhost',
	   'login' => '☆☆☆☆',
	   'password' => '☆☆☆☆',
	   'database' => '☆☆☆☆',
	   'encoding' => 'utf8',
	   'prefix' => '',
	   );
	  
	  }else{
	   exit("Err:データベース定義が見つかりません ".__FILE__." Line:".__LINE__);
	  }
	 }
}