おいしい食べ方CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日本発のCakePHP応援ブログとして、最新情報をお届けします。JSHelper1.3ブランチには、mark_storyによる下記のコードがあります。JSHelperの構想がこちらに。|2009年04月04日PHPで作ること、作らないほうが良いことひさびさの更新です。CakePHPに関しては、なんかこう、自分の中では“普通の”ツール扱いになってしまい、MySQLやphpMyAdminを使うのと同じ感覚になってきたため、それほどここに書き込む内容もなくなってきたような...。CakePHP.orgができたばかりの頃は、できないことやバグも多いということで、わいわいがやがやとした雰囲気がありましたが、その頃の人たちの声が今ではWeb上には出なくなり、Ticketもそれほど面白くなくなってきた?ような気もします。1.3や2.0になった時にはまた活発になるかもしれません。いえ、日本では安藤さん主導でハンズオンセミナーが開かれ、まだまだ驚くようなプロジェクトや仕掛けが出てきそうな気配です。gwooも日本に期待しているのではないでしょうか。with....今回、“htmlをPDF化するオンラインツール”を作る必要が出てきました。具体的には、見積もりをWeb上で作るオープンソースのソフトがあって、それにはすでにそういうコードが入っていたんですが、日本語出力に対応していなかったんです。PHPで定番と言えば、FPDFや、TCPDFなどがあり、どちらも日本語を出力する方法があります。今回のプロジェクトでは、html2psを使っていました。html2pdfFPDFや、TCPDFにはできない芸当をhtml2psはやってしまいます。PHPだけで、かなりの数のサイトのWeb画面を生成してしまうのです。"PHPでブラウザを作る"みたいなプロジェクトです。HTMLを独自にパースして合成してゆくので。最初、これをちょっといじれば日本語化対応できるかな、と思い、コードを読み始めましたが、これはちょっと手に負えないな、と思い、やめてしまいました。同時に、「ここまでやるか〜」というような気分になったのも確かです。TCPDFはアルファチャンネルにも対応している、と書いてあるのですが、実際に使ってみると、計算に時間がかかりすぎました。PHPは便利なので、やろうと思えば、「画像認識OCRをPHPコードで」とか、「Webページの画像を合成」とか、もっといけば「音声合成・認識をPHPで」とか、「もしかしたらできるんじゃないの」と思ってしまうかもしれません。実際に画像認識もがんばっている人が入るみたいだし...。道具は使いようというか、「本当にそれはメリットがあるのか」ということを考えないと、ただの自己満足に終わる危険があります。Studioを立ち上げました。その結果、動作コードは半日もかからずに出来上がってしまいました。C#でPDFを出力するオープンソースのライブラリがこんなにたくさんあるとは。ライブラリに付属のサンプルをちょっといじるだけでできてしまいました。URLから画像を生成するツールと組み合わせたら、あっという間に完成です。日本語ももちろん対応しているし、何より速度が大違い。Windows上で動作すれば今回は良いので、これでおしまい、ということにしました。それと、「それ、本当にPHPでするべき仕事?」というのは考えないといけないと思います。extensionhttp://jp.php.net/manual/ja/book.haru.phpでも良かったかも。Haruhttp://devzone.zend.com/article/4044-Dynamically-Generating-PDF-Files-with-PHP-and-Haru-http://php.net/manual/ja/function.imagegrabwindow.phpでIEのキャプチャも取れる〜。1.2.2.81201.2.2が公開されています。1.2.2.8120http://bakery.cakephp.org/articles/view/release-1-2-2-8120今回のリリースは、cakephperさんの下記の報告が大きなひとつの理由となっていると思います。3Fセミナールームにおいて開催され、無事に終了したそうです。参加してきたhttp://suzuki.tdiary.net/20090307.html#p01yandodの日記3/7(土)CakePHP初心者向けハンズオンを開催しますhttp://d.hatena.ne.jp/yandod/20090223/1235344997企業の製品に関するハンズオンだったら非常に高額な授業料になると思うのですが、オープンソースならではの企画・講習会となったのではないでしょうか。企業でまとめて講習を受けたい、という場合にも講師として招待できるかもしれません。その場合には費用が発生すると思います。(笑)(おまけ)※CBAでは、異文化研修コミュニケーションを引き続き承っています。TESOL式によるトレーニングや、実際に海外と丁々発止の交渉をしながら業務を行う講師による、リアルな授業を展開していますのでお気軽にご相談ください。|2009年03月06日フレームワーク同士の大人の付き合い方なんかよく分からないタイトルになってしまいました。「XXフレームワークはだめだ。○○フレームワークのほうが良い」というような言い方をPHPの世界ではよく耳にしました。Cakeが槍玉に挙げられることが多かったのも事実です。いう「槍玉にあげる」人もいたからです。今日のはてなブックマークでホットエントリに入っていたリンクに面白い一節がありましたので、せっかくなので引用しておきます。CakePHPも、Symfonyも、CodeIgniterも、Akelosも、Rachoも、その他のフレームワークも、みんなこれは大事だと思います。messages.”日本語:http://producingoss.com/ja/marketing.html#competing-products「競合するオープンソースプロジェクトを攻撃しない競合するオープンソースプロジェクトについて、否定的な意見を述べるのはやめましょう。ついては一向に構いません。容易に裏が取れる主張は、比較する要素としてよく見られるものだからです。あいまいな事柄に対して否定的な評価を行うことは避けた方が良いでしょう。理由はふたつあります。それがきっかけで建設的でないフレームウォーが起こりがちだからです。競合プロジェクトで働く人が出る可能性があるからです。前者より、後者の方が多く発生する可能性が高いです。それを生かせる場所であればどのプロジェクトでも貢献してよいからです。関連するプロジェクトの開発者を知っている可能性があります。否定的なマーケティングのメッセージによって全て壊れてしまう可能性だってあるのです。知っている人は知っている?知識かもしれませんが、一応。Authコンポーネントを使うと簡単にパスワード画面が作れるが、最初にその画面を通してもらうために入れるDBの値はどうやって指定するの?そこを通してもらわないと、最初のデータの追加・編集もできないじゃないか、という話です。1.2.1.8004から、Authコンポーネントを使ってログイン画面を作っている場合、それ以前のバージョンでは表示されていた、“パスワードをハッシュ化した値”が、SQLのデバッグ画面に表示されなくなりました。DBに入れていました。要は、“卵が先か、ニワトリが先か”というやつですね。万が一のことも考えると、セキュリティのことを考え、画面には一切表示しない、というほうが安全なのかもしれません。$this->Auth->password("知りたいパスワード");とすれば、ハッシュ化された値がすぐとれます。その値をDBに入れておきましょう。ちなみに、セキュリティ・Saltの値によってこの値は変わります。パスワードの値は同じでも、ハッシュ化された値はまちまちになりますので注意。Mattが公開していました。IDEhttp://www.pseudocoder.com/archives/2009/02/25/programming-cakephp-app-with-komodo-ide/下記にあるCakePHPエクステンションを使っているらしいです。http://community.activestate.com/node/2794たまには、ほかの人の開発環境を見てみるのも参考になります。(beta)http://www.cakephp.jp/ajaxdemo.zipAjaxHelperをどう使うか、というサンプルであって、「どこまでできるか」という応用サンプルではありません。考え方だけ一応見ていただいて、jQueryにするなり、Dojoにするなり、script.aculo.usを使い続けるなり、いろいろ試せば、様々なエフェクトが見つかると思います・・・。時間ができたらそのうち追加します。Designs)CakePHP用テンプレート(Business)CakePHP開発者へのインタビューCakePHPの概要このブログのメール配信は、こちらから。cakephpと入力してください。2.0Seesaaブログ×この広告は180日以上新しい記事の投稿がないブログに表示されております。