出張先でcakePHPと格闘なう

出張先の武蔵小杉にてコーディング中。APEC打ち上げと思われる警官連中が大騒ぎする中、狭くて暗く臭い部屋でパソコンに向かっています。

本日対処したいのは、cakePHPからKMLを出力してもなぜかgoogleMapsで正しく読み込んでくれない点。KMLをネットで拾ってきて、任意のviewで

とそのまま吐き出してるだけ。layoutが余計なことしないようにajax.ctpを使うように設定。一旦ローカル保存してgoogleMapのWebサイトから読み込んでもうまくいかない。

見比べていると、冒頭のxml宣言が出力されていない模様。

echo $this->Xml->header();

XMLHelperを使ってヘッダ出力してみるも効果なし。試しに、出力されたkmlの先頭にxml宣言を手で書き加えてgoogleMapsからインポートすると表示される!ということは完全にkmlの記載の問題だ。。。

こんなとこでつまずくと思ってなかったよ。ちなみに拡張子kmlでなくても表示できることも確認済。

http://blog.aidream.jp/cakephp/cakephp-xml-output-941.html
http://blog.tomoeishikawa.com/archives/16
もしかしてコレでいける?

と思って設定してみたら、xxx.xmlがないと言われてしまう。なんだか迷路に陥ってしまった気がするのでちょっと散歩して気分転換するか。