タグ : CAKEPHP

【CakePHP】直前にsave()したレコードのidを取得する

CakePHPで直前にインサートしたレコードのIDを取得してくる。

$this->Table->save($this->data);
$last_id = $this->Table->getLastInsertID();

【参考URL】
http://xtw.me/XlrgHB

【MySQL】REGEXPの正規表現検索

MySQLはRDBMSなので、正規化すれば問題ございませんが、
既にテーブルのカラムにカンマ区切りのデータが入っていてデータが変更できない場合のクエリです。

idに1,10,11,111のようなデータが入っているときに1をLIKEで検索すると全て引っかかりますね。
SELECT * FROM table WHERE id LIKE ‘%1%’

そこでREGEXPにて検索すると正規表現のOR検索でできるので、
検索結果は一件のみ抽出されます。

■MySQL
SELECT * FROM table WHERE id REGEXP ‘^1$|^1,|,1$|,1,’

■CAKEPHP
$this->Table->find(‘all’, array(‘conditons’ => array(‘name REGEXP’ => ‘^1$|^1,|,1$|,1,’));

【CAKEPHP】Warning: strtotime()エラー

CAKE PHP 1.2.6をインストールしていて、Warning: strtotime()というエラーにブチ当たる!
このエラーはphp.iniのtimezoneの設定みたいなので変更してapacheを再起動すると直った!

vim /etc/php.ini

;date.timezone =
 ↓
date.timezone =Asia/Tokyo