記事

CakePHP2.3 & MySQLでGeometryを使うとdebug()出来ない件

  • このエントリーをはてなブックマークに追加

CakePHPで開発する上で便利なdebug();。何が出力されるかわかっていてもdebug()してしまう僕ですが、debug()しても何も出力されないという問題に遭遇!

最初はデータがデカすぎるのかなぁなんて思ってましたが、今までも大概大きなデータをdebug()してきました。そして問題もなかった。

朝からハマること約2時間。。。CakePHPのソースを追っていくと、basic.phpのdebug関数の中でh()を通る部分があるのですが、そこで中身が空っぽになっていることが判明。

そこで最近データベースを弄ったことを思い出しました。
位置情報を保存するためにGeometry型のデータを入れたのです。

で、データベースからデータを取得するときにそのフィールドを除外してfind、そしてdebug。
表示されました!

Geometry型のデータを取得するときはMySQLのX関数、Y関数で変換してから取得してやらないとCakePHPは困ってしまうようです。

  • このエントリーをはてなブックマークに追加
2013年6月
« 5月   4月 »
 12
3456789
10111213141516
17181920212223
24252627282930

フォトライブラリー

コメントを残す

%d人のブロガーが「いいね」をつけました。