Archives by date

You are browsing the site archives by date.

【CakePHP】ファイル名とクラス名が異なるファイルをインポートする方法。

ファイル名、クラス名が一致している場合は「App::uses()」を用いてクラスの読み込みを行っていたが、それらが異なる場合はうまく読み込めず頓挫していた。
しかし「App::import()」を用いることで上手に読み込めることが確認できたのでメモ。

例えば「app/Vendor」にライブラリを設置したとすると、読み込み方は下記の通り

App::import('Vendor', 'ClassName', array('file' => 'PATH'.DS.'TO'.DS.'CLASSFILE'.DS.'hoge.php'));

公式ドキュメントは下記を参照↓

http://book.cakephp.org/2.0/ja/core-utility-libraries/app.html#vendor

これで正しくインポートが行える。

 

【CakePHP2.4】CakePHPで動的にDBの接続先を変更する。

めも。
モデルごとにDBの接続先を変更したい時に便利。

まずは「app/Config/database/php」に接続情報の追加を行う

class DATABASE_CONFIG {

	public $default = array(
			'datasource' => 'Database/Mysql',
			'persistent' => false,
			'host' => '',
			'login' => '',
			'password' => '',
			'database' => '',
			'prefix' => '',
			'encoding' => 'utf8',
	);

	// 追加のDB接続情報
	public $hoge = array(
			'datasource' => 'Database/Mysql',
			'persistent' => false,
			'host' => 'xxxx',
			'login' => 'xxxx',
			'password' => 'xxxx',
			'database' => 'xxxx',
			'prefix' => '',
			'encoding' => 'utf8',
	);

}

次にモデルにてDBの接続先情報を指定する。

class Example extends AppModel {
	
	public $useDbConfig = 'hoge';
	
}

これでモデルの接続先DBを動的に変更することが出来る。

めっちゃ便利だね。

 

【PHP】シングルクオート、ダブルクオート、速度比較。

めも。

シングルクオートとダブルクオートはシングルクオートの方が処理速度が速い模様。
意味合いも違うしちゃんと使い分けるのが吉。

 

【PHP】スクリプト実行時間を取得する。

メモ。

現在の時間を取得したい場合、time()関数をコールするよりも$_SERVER変数の定義済み値を参照するほうが処理速度的にベター。

echo $_SERVER['REQUEST_TIME'];

これでスクリプト実行時間のタイムスタンプが取得できるので、あとはdate()関数になげるなり好きにすればOK。