黒部ダム行ってきた
9 月 21, 2009
先週だか、先々週だかに友達から「黒部ダムいくべー!」って誘われたので、
シルバーウィークを使って行ってきた。
そのときのメモでも。
なんかの参考になれば幸いでございます。
phpで変数で変数を参照するまとめ
7 月 7, 2009
phpで変数で変数参照する書き方ができると、プログラムもかなりすっきりするので個人的には結構好きなんで、まとめておこー。
変数で変数を参照
とりあえずコード。
$a = "b"; ${$a} = "c"; echo $b."\n"; //c
意外と忘れがちな、変数で、変数参照するパターン。
まん中の${$a}の部分。変数bは存在しないが、$aの中身を変数として扱うため、$bにcが代入され、cが表示される。
変数で関数を参照
class refer { function a() { return "a_from_function"; } function b() { return "b_from_function"; } } $obj = new refer(); $function_name = "b"; $string = $obj->$function_name(); echo $string."\n"; // b_from_function
ちょっと長めですが。
インスタンスを作成して、その中のfunctionを参照するときには変数で参照が可能。
referというインスタンスの中に、aというfunctionとbというfunctionを定義。
$function_nameという変数を用意して、インスタンスの関数を呼びだす。
$function_nameの中身はbだから、bのfunctionが実行されるので b_from_function という結果が返ってくる。
defineされた値を変数参照
define("A","a_from_define"); $define_name = "A"; $string = constant($define_name); echo $string."\n"; // a_from_define
phpにはconstantという関数があって、これを使えば簡単にdefineされた値に変数で参照できる。
説明するより、プログラム見たほうが早そう。
とりあえずこの3つだけでも覚えておくと、プログラムがすっきり書けたりするので覚えておいて損はないかも。
特にfunctionの部分は、同じような処理をするけど、function別に処理しないと困るし・・・なんてときにいいかも。うむ。いい例が浮かびませんでした。
macから初めて投稿してみた!
まだまだ慣れませぬ・・・・
ショートカット有効活用。
6 月 4, 2009
最近色々な人の作業を見てたりするんだけど、なんだか非効率的なことしてるなーと思うときがあるので、ちと書く。
とりあえずこれくらいやっておこうよ!(知っておこうよ!)なものです。2つだけですが・・・。
puttyでログイン名を設定しておく。
大体会社の人たちはputtyなんだけど、意外と設定してない人がいるputtyのログイン名の設定。
毎回毎回ログイン名打つのって手間でしょー。特に鍵でログインしてる場合とかは。
これ設定すれば、一撃で入れるようになるし、とりあえず設定しておくことをおすすめします。
↓の赤枠のところをにログイン名を入れればOK。ちゃんと設定は保存しましょうね。

Ctrl+R
これはputtyの話でなくてLinuxのお話です。
前の会社の人に教わったbash_historyの履歴検索であってるのかな?
これ慣れると作業効率30%は確実にUPする。↑とか使ってhistory探すのとか必要なくなる。
まずCtrl+Rで以下のような状態になる。
[musi@localhost ~]$
(reverse-i-search)`’:
↓
で、検索した単語の一部を入力する。途中の単語でもOK。
例えば適当に以下のようなgrep文だとしたら、「ID」でもOK.
その1行のどこでもよいから覚えておけばよい。
$ cat /usr/local/apache/log/access.log | grep index.php | grep -v ID
↓
試しに↑の文を入力して、検索してみた。
「I」を押した状態が以下。
[musi@localhost ~]$
(reverse-i-search)`I’: cat /usr/local/apache/logs/access_log | grep index.php | grep -v ID
やってみるとわかるんだけど、一番近いbashのhistoryで一致するものを表示してくれる。ワードを続けて打ち込んでいけばどんどん絞れるので間違っていたらどんどん進めていけばよい。
↓
でも「これ以上キーワード思い出せないけど、このコマンドじゃないんだよ!!!」っていう場合。
↓
その状態でCtrl+Rを押すと、条件そのままで、一致するもう1つ前のコマンドを探してくれる。
↓
Ctrl+Rで探したはいいけど、探しすぎて戻しすぎた!って場合は落ち着いてShift+Ctrl+Rを押す。そうすれば前のコマンドに戻れる。
↓
コマンドが見つかったら、そのままEnter押せば実行されるし、Esc押せばそのコマンドを表示してくれる。そのまま編集して実行することもできる。
意外と、cdとかlsとか使いすぎてて↑押してもあれじゃねーこれじゃねーとか見つからない場合もあるし、昨日使ったあのコマンドもう一回使いたいのに!っていう場合にも一撃で検索できたりするので使ったほうがよいですよ!!
あと昔は解除方法がまったくわかんなかったんだけど、Ctrl+Sを押して何もできない状態になったら気をつけて!そのコマンド裏で受け付けてるよ!!!!
Ctrl+Qでそのコマンドを全てリリースするので、怖かったらお使いのターミナルを終了することをおすすめします。
一度、Ctrl+S→$ cat 適当なファイル(実際にはフリーズしたように見えて何も表示されない)→Ctrl+Qってのをやってみるとよいです!
これの使い道がいまいちわかんないんだけどなんなんだろ・・・。
cakephp勉強会第4回に参加してきた
5 月 23, 2009
追加募集で無事参加できたので、行ってきました!
詳細はこちら→第4回CakePHP勉強会@Tokyoぽんぎ!ぽんぎ!
ストリートビューで「VOLVOの上ですね。わかりました。」とか思っていったら改装中で焦ったわ!んもー!
さて、cakephpの4回目です。関東です。まだ4回目なんですねー。
お外の勉強会に出るのは久々で楽しかったです><><
Main Session
CandyCane:yandoさん
cakephp会の重鎮yandoさんのRedmineのPHP化計画のご報告。
RedmineはRailsでできてる→webサーバの設定とかインストールとか大変だよねー→じゃPHPでよくね?→cakePHPで作られたキラーアプリになるかも!(←ここ重要
ということでお話聞いてました。合宿の話とかは確認済みだったのですんなり聞けました。
今Tracですけど、リリースされたら是非ともいれよう!やっぱりソースも見たいし!
今後も期待してます><
Ktai Library:MASA-Pさん
最近注目の携帯用CakePHP。なさそうでなかったスタンダードな機能が目白押しっ!
携帯は3キャリアになると絵文字や、画像が気になるところなのでその辺を気にしなくなるのはよいですなー。フォントサイズも3キャリで微妙に違ったりするんだけど、どうなってるのかな・・・。
文字コードはSJIS<-->UTF-8ということなので、既存サービスに取り込むとなるとちょっと大変そうなイメージ。(文字コードとが合うとも限らないし)
GPSの機能ないと言ってたけど・・・GPSのcomponentあるけどいるかなー。お話聞けばよかた・・・。
極める routes.php:akiyanさん
gihyoで絶賛Cakeの記事を書かれているakiyanさんのお話キター!
あとで資料アップしてくれるってことなので、Cakeやってる人は絶対見たほうがいい。
目からうろこな情報が沢山ありました。基本:controllerと:actionしか使ってなかったけど、routes.phpで書いたものを$this->paramsで受け取れるとはしらなんだ!逆ルーティングとかすげー!とかで口ぽかーんでした。
あとで会社のプログラム書き直そう・・・。λ。。。。
LT Session
CakePHP 1.3:cakephperさん
ichikawayさんキター!以前このブログにコメントくれてたの覚えていてくれてたようで嬉しかった!うほほ。
こんな1日数PVあるもの覚えていただいてるとは思っていなかったぜ・・・。ビール飲んだら早口になった。ごめんなさい。
1.3でもまたまた色々な機能が追加されるようですが、個人的にデプロイツールね!気になる!
結局自作して運用してますが、便利そうだったら乗り換えようかなー。あとthechewはやっぱgitなのか。gitそろそろ覚えよう・・・。
phpUnderControl+cakePHP:miauさん
なんか色々すごかった。マインドマップ的なプレゼンで初めてみました。おもろー!
CI(Continus Integration)のお話。テストを1つのサーバにまとめて動かして、みんな幸せになろう的なもの。(であってるのか・・・><)
やっぱりテストは必要だよなー。書いたほうがあとあと楽だし。がんばる!
PEAR:Image_Graph:s-yo-koさん
Image_Graphをcakeで使う!ってお話。そーえばPHPで画像処理とかしたことないな・・・。ImageMagicもよく聞くけど結局よくわかってないし!
一番大変なのはImage_Graphのインストールだったようでw機会があったら使ってみよう!
ビヘイビア:syuhariさん
うおおおおSun Limited Mt.の中の人だ!Cakeで困ったことあったら大体参考にさせていただいております。
cakeはそこそこ使ってるけど、まだビヘイビアだけ手をつけたことがない状態。というのもテーブル数が少ないのでビヘイビアを使うまでもない。app_model.phpを上書きしてくれるわ!みたいな感じでやってるもんで・・・。
便利なことはいうまでもないので、たまにはbarkeyでも覗きましょうかね。
とここで時間になったので、一度乾杯しました。
お酒と食事をつまんで、残る2つのLTを再開。
みんなお酒入ってて盛り上がりがはんぱなかった!
プラグイン三段活用:slywalkerさん
プラグインの使い方を初めて知った!これ聞けてよかった。
プロジェクトは違うけど、コンポーネントを共有したいときに、本体につっこんでたんだけど、いい方法がないかなーなんて思ってたんだけど、まさにこれじゃないか。
本体に入れると、強制的にcomponentが読み込まれるから、気になってたんだよなー。
おれも10万円欲しいし!
10分でできるApp::import:shin1×1さん
Cakeの中はApp::import使ってファイルを読み込むのが普通な感じだけど、その中身(サーチ順だったり、サーチパスの追加だったり)を解説!
あまり深く考えたことなかったApp::importだけど、よく考えれば毎回サーチするなら結構な時間かかるかも。うむ。
Cake1.2のガイドブックの発売+池袋ジュンク堂でトークショーとCakeにもびゅーびゅー風が吹いてますね。
2,3,4回目と参加させていただきますが、Cakephpの勉強会は人数が募集人数が多いので参加しやすくすごいありがたいです!今回も60人ですからね。ほかの勉強会はこうはいかない・・・。
久々に会社外の人と話したらやっぱたのしーな!よい刺激になりました><
運営の皆様、また会場を提供していただいたGREE様、お疲れ様でした。
また次回も参加できればと考えております。次回はLTでしゃべってみようかしら。
その前にノートPCを買わないとでした。だめだこりゃ。
findall(find***系)って非推奨なのね!
5 月 13, 2009
久々すぎて泣いた。。。もっと書かなきゃなぁ。
http://book.cakephp.org/ja/view/73/Retrieving-Your-Data#findAll-448
最近知ったよ\(^o^)/
まぁ最近はアソシエーションなしで、JOINを普通に書いてしまってる今日この頃なので、大して問題ありませぬが。
あれだよね。find(’all’)とかでやったほうが色々融通利いてよし!と思ってる。
アソシエーションなしなのは、テーブル設計しても、結局単体でデータひっぱってくるほうが多いもので。
あとはLEFTになるのがどうもいやなのであまり使ってないんですよね。
データベースがそこまで大きなものじゃない(テーブル数10も行かないくらい)なのでこれで無問題!
これから書くときはfind(’all’)でがんばる!