2012/11/3に博多で行われたPHPMatsuri2012で話をした際のスライドです。CakePHPとタイトルにありますが、CakePHPの話はほとんどありませんw。内容は過去のワンクリックデプロイ勉強会の再構成です。
Google グループの参加者が 200人を突破し、そろそろ巷でも流行っていると言われ始めた FuelPHP です。 (17:44 追記) CodeIgniter からの移行ユーザが多いのは事実ですが、それだけではありません。あと、この記事は CodeIgniter との違いを指摘したものです。 (12:48 追記) まったく流行っていない地域もあるようです。 FuelPHP は何故流行っているのか? その理由の 1つには、他のフレームワーク、とりわけ、CodeIgniter、Kohana、Yii とは違い、多くのユーザが全国的にいろいろな場所で FuelPHP に関する発表を行なっていることがあります。 slideshare から、おおざっぱに抜粋してみました。slideshare にもこれ以外のものもありますし、他の場所にもあります。貼り付けるスライドが多すぎると表示の確認で Fire
原稿執筆 原稿は Vim で書いて、Marked のプレビューを確認するという形で進めました。 Vim 原稿の形式は、Markdown+独自マークアップのプレーンテキストだったので、執筆陣は各自好きなツールを使うことができました。 Vim は普段から使っていて慣れていますし、技術本ということでソースコードを読んだり書いたりする場面が多いので同じエディタ上でそれができるのは楽でしたね。 Markdown ということで当初は専用のエディタなども試したのですが、やはり「書く」という行為に関しては手に馴染んでいるものが一番です。 Marked Marked は Markdown 形式で書かれたファイルをプレビューするツールです。Marked でファイルを開いておくと元ファイルが変更されるとプレビュー側も連動して更新されます。 あくまでプレビューに特化したツールなので任意のエディタと組み合わせて使用
2010/11/13 に出たらしい http://bakery.cakephp.org/articles/markstory/2010/11/13/cakephp_1_3_6_and_1_2_9_released を読んでびっくりしたんですが、 Twitter を軽く検索した限りだと CakePHP ユーザでない僕が気づいているのに (日本の) CakePHP ユーザさんたちがどうも気づいていないっぽいのでわかりやすくまとめてみることにしました! CakePHP には任意の PHP コードが実行できる致命的な脆弱性があります! 影響のあるサイト結構ありそうですが悪用厳禁です! ※通常リリースの告知のなかにこんな致命的な脆弱性に関する情報を思いっきりわかりにくく書いちゃうのはひどいなあと思うので、ユーザの方は CakePHP に文句を言うといいと思います。僕は CakePHP ユーザじゃない
ヘルパーで出力されるタグを変更する方法です。 やりたいこと ビューで < ?php echo $html->link('Love CakePHP', 'http://www.cakephp.org'); ?> と書くと <div class="link"><a href="http://www.cakephp.org" >Love CakePHP</a></div> と div タグで囲んで表示するようにしたい。 概要 app/config 内に変更したいタグを定義してヘルパーの親クラス(AppHelper) で定義したタグを読み込むという方法です。 CakePHP1.1 と 1.2 で少し方法が違います。 CakePHP1.1 app/config に tags.ini.php というファイルを作成しここにタグを定義すると自動的に反映されます。 app/config/tags.ini.p
APIやRSSなどを提供しているサイトは、情報を簡単に扱うことができますが、例えば Yahoo!の検索結果とか、mixiのニュースとか、あるサイトの一部を取り出したいことってよくあります。(とはいえ、著作権違反には注意 そんな時、PHPのライブラリである「htmlSql」を利用すると便利。このライブラリに、ファイルでもURLでも文字列でも、HTMLで作られたものなら何でも与えると、解析して取り出しやすくしてくれます。しかも、その取り出し方はSQL! 例えば、「id属性が’test’の p要素の内容を取り出したい」という場合には、次のようなSQLを使います。 SELECT text FROM p WHERE $id=="test" 超パワフル。ということで、これを CakePHPで利用するためのテクニック。 まずは、ダウンロードしたファイルの中から次のファイルを「app/vendors」フォ
処理内容 モデル「ModelA」のデータをModelA::save()で更新。 モデル「ModelB」のデータをhasManyの関連を持つデータとともにModelB::saveAll()で作成(トランザクション処理)。 (モデル「ModelB」のデータの作成に失敗した場合はエラー処理後に処理を継続。) モデル「ModelA」のデータをModelA::save()で更新。 $data = array(...); $this->ModelA->create(null); $this->ModelA->set($data); $this->ModelA->save(); ... $data = array(...); if (!$this->ModelB->saveAll($data)) { エラー処理 } ... $data = array(...); $this->ModelA->creat
早くも蚊に刺されました nakamura です。きっとおいしそうなんでしょうねぇ。分かる分かる。 今日は CakePHP 連載の 7 回目!CakePHP のキャッシュをファイルではなく memcached に保存する方法を紹介します。 memcached って? データやオブジェクトをメモリ上に保持する為のキャッシュサーバです。ファイルにキャッシュするよりも高速に動作し、PHP, Java, Perl 等を始めとするプログラミング言語や MySQL, PostgreSQL といった RDBMS など memcached を利用可能なクライアントアプリケーションはとても多岐に渡ります。 この辺りが詳しく解説してくれています。 memcached - Wikipedia 特集:memcachedを知り尽くす|gihyo.jp … 技術評論社 memcached をインストールする 今回は C
ご報告が遅くなりましたが、去る2009/09/14に絶版となりました orz 出版から3年ですか。自分が最初に書いた本(雑誌ではなく)で、いろいろな思い入れはあったんですが、やっぱりCakePHPなどのフレームワークとかJavascript関連などの"今、熱い"技術の本と違って、"ブーム"が去るのが早いですね。。。 製作に関わっていただいた方、また書店で手に取っていただいた方、ありがとうございました。 で、これに伴い、校正前の原稿テキストを(一部を除き)順次公開しようと思います。基本的に『原稿テキストをHTML形式に変換したもの+図画そのまま』ですので、誤字/脱字、説明不足の箇所もあるかも知れませんがご了承ください。挿絵はありません。 http://www.doyouphp.jp/book/book_phpdp.shtml とりあえず、第1章、第4章のTemplateMethodを公開しま
スパイスラボ神部です。 このところテキストネタエントリばかりだったので久々にコードネタで。 今までもっぱら C++ から制御していた OpenCV ですが、PHP の拡張機能(バインディング?)として OpenCV を制御する関数を書いてくださっている方がいましたので、こちらを実際に利用するまでの流れを簡単にまとめておきたいとおもいます。 まず下ごしらえとしてはこちらのエントリ。 -PHPで顔検出の続き ネットに花を咲かせましょう。 会社作りました。 pecl-gen -f face_detect.xml cd face_detect phpize ./configure make make install おー、すごい。このやりかた(codegen -> phpize という流れ?)は優秀ですね!XML の内部に直接 C++ のコードを書いてしまうことで、簡単に拡張機能が作れてしまう。
@deprecated この情報はCakePHP1.2betaまでのものです。1.2RC1についてはこの方法は有効ではありません。詳しくはCakePHP 1.2RC1からは比較演算子をキーに書くをどうぞ。 CakePHPのモデルで検索条件を指定する場合は比較演算子に注意が必要です。 検索条件では↓な感じで条件値の他にSQLの比較演算子を入れることができます。 <?php class UserController extends AppController { funtion index($id) { $id = is_numeric($id) ? $id : 0; // $id より大きなidを持つレコードを取得 $list = $this->findAll(array('id' => '> ' . $id)); $this->set('list', $list); } } ?> これを見
第16回何でもできるようになった1.2のデータバリデーション機能(1/2):基本編 秋田真宏 2009-07-17
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く