今更という感じもあるのですがハマッテしまったので自分のメモとして記事にしておきます。
カテゴリー: 未分類
Googleカレンダーみたいに開始時刻からの経過時間を日本語で出したい
システムでイベントの開始時刻と終了時刻を入力する欄が必要な時、開始時刻がインプットされていれば終了時刻を選択する際には開始時刻からの経過時間が表示されていると、ユーザさんにとって分かりやすいですよね(^^)
たとえばこんな感じです↓
CakePHP1.3で携帯サイトを作る時の注意
CakePHPの1.3にバージョンアップしてみて携帯サイトを作ったら今までどおりのやり方でやっているのに文字化けが起こってしまいました。
何故か調べてみるとCakePHP1.3からは$form->create()をすると勝手に accept-charset=”utf-8″をformタグにくっつけて生成してしまうらしい・・・
ということで
$form->create(null, array(‘encoding’=>null));
と記述して文字コードの指定がされないように対策しました。
pdftkを使ってPDFを合体する
pdftkを使ってPDFを合体したので、その手順を照会します。
使っているLinuxにpdftkが入っていなければyumでインストールします。
# yum install pdftk
後はコマンドで
pdftk A.pdf B.pdf C.pdf cat output D.pdf
とするだけで、A、B、CのPDFの内容が合体されてD.pdfが作成されます。
今回はphpのプログラムからpdftkを使いたかったので、exec関数を使ってpdftkを叩きます。
exec(“pdftk A.pdf B.pdf C.pdf cat output D.pdf);
phpから呼ぶ時に注意しないといけない点はPDFのパスを指定しないといけない点で、
exec(“pdftk 絶対パス/A.pdf 絶対パス/B.pdf 絶対パス/C.pdf cat output 絶対パス/D.pdf);
と記述してあげます。
グーグルマップを使ってみた
今回、管理側で指定した地図の場所を公開側で表示させる仕様のお仕事が来たのでグーグルマップを取り入れました。
pChartで棒グラフを描きました。
CakePHPでprefixを使っている時のpaginatorの挙動を直す
CakePHPでprefixを切り替えた所の開発をしていたのですが、paginatorでページ切り替えなどを行おうとすると、飛び先のURLからprefixの部分が抜け落ちておりリンクエラーになってしまいました。
これは困ったと調べてみるとcore.phpで以下の記述をすれ良いだけのこと。
Configure::write(‘Routing.admin’, ‘使っているprefix値’);
なんだかみたことがある記述だなと思っていたら、prefixをadminにして動かしたいときはcore.phpで
Configure::write(‘Routing.admin’, ‘admin’);
のコメントを外す決まりごとがあったなという事を思い出しました。しかしadmin以外のprefixを使っていたのでそこらへんの仕組みがノーマークだったため、そこそこはまりました・・・
Subversion(サブバージョン)でEUC-JPのソースを管理する
Subversionを使用してバージョン管理しているのですが、EUC-JPのソースを管理しようとした時、ソースの差分を見たら文字化けしてしまいます。
これはSubversionの標準ビューアのTortoiseMergeがEUC-JPに対応していないという事らしいです。
ではどうすればいいかなとググッてみたらWinMergeというビューアを入れてSubversionに登録してあげると良いらしい・・・
WinMergerはhttp://www.geocities.co.jp/SiliconValley-SanJose/8165/winmerge.htmlから自分の環境に合ったバージョンを落としてきます。
落としたZIPファイルを解答すると中にexeファイルが居るのでこれを使ってあげるだけです。
Subversionに紐付けるのは「TortoiseSVN→設定→外部プログラム→差分ビューア」でプログラムの指定が出来るところで外部を指定してパスに先ほど落としてきたWinMergeのexeファイルまでのパスを指定するだけでEUC-JPのファイルでもきちんとバージョン管理が出来るようになりました。
個人的にはTortoiseMergeよりWinMergeの方が見やすくてGOODですね!!
ドキュメント勉強会に参加してきました。
ドキュメント勉強会開催の経緯
技術部の今岡です。
もう少し前のことになってしまって恐縮ですが、ドキュメント勉強会というものに参加してきました。
8月6日(木) 大阪市北区のメビック扇町というところで、場所はCakePHP関西勉強会の会場と同じところです。
そのCakePHP関西勉強会の第二回が、私の技術系勉強会の初体験だったにもかかわらず、今回の勉強会では発表者に名前を連ねることになってしまいました。
CakePHP勉強会の後、人から薦められてアカウントを作っていたTwitterを本格的に利用し始めました。
Twitterでは様々な人が好き勝手なことを雑多に呟き、その呟きに興味があったりして継続的にその呟きを読む為には、呟いている人を「フォローする」という操作を行います。
Twitterの詳しい話は今回の話題ではないですが、そのTwitter上でCakePHP勉強会を主催された新原さんという方をフォローさせて戴きました。
新原さんがTwitter上で勉強会というものについて、とか、ドキュメント勉強会ってどう思う?というような疑問を投げられまして、私を含め数人がそれに反応し、その反応の内容を受けて新原さんはドキュメント勉強会を開催しようと決定されました。
(新原さん自身のブログやWassarという別のサービスなどもありますので、Twitterがすべてではないと思います。念のため。)
勉強会の決定や開催日時の告知にもTwitterが有効に活用されました。
そして、そのTwitterを通じて、私のところに発表の依頼が飛んできたのでした・・・。
CSVファイルをモデルのfindメソッドで読み込む方法
CakePHPの勉強会で、英語に負けずコードをばんばん読んでいこう!という話があったので、Bakeryの中を覗いて見つけたソースを動かすというのをやってみました。
今回はCSVファイルをfind一発で読んでしまおうというヤツです。
元はSiegfriedHirschさんが作成されました。
CSVファイルをデータベースっぽくする為に、いくつか準備をします。