OAuth認証ってナニ?のエントリで紹介したWriting A Simple Twitter Client Using the PHP Zend Framework’s OAuth Library (Zend_Oauth)のブログエントリに掲載されているZend_Oauthを利用して、TwitterでOAuth認証を行うためのチュートリアルを書き留めておきます。 Zend_Oauthライブラリをダウンロード Zend Frameworkの最新バージョン(本エントリ執筆時点)であるV1.9.5では、Zend_Oauthライブラリは本流(main trunk)には組み込まれておらず、インキュベータ(incubator:孵化器)の中で開発が進められています(次期バージョンのV1.10では、本流に組み込まれる予定のようです)。そのため、Zend Frameworkのダウンロードサイトで入手できるZ
Participate in the Discussion Please participate in the discussion! You can either do so in comments to these pages, or by subscribing to the zf-contributors@lists.zend.com – simply send an email to zf-contributors-subscribe@lists.zend.com! Zend Framework 2.0 will be the first major version following the 1.x series, and as such is the first time BC breaks will be allowed. Our goal is to make brea
6月の発表に関する追記として、実際にリリースされたのは1.8.5ではなく、1.9.0でしたというのすっかり忘れてました。jiraのroadmap*1にはミニリリースと書いてあった気がしますが。 PHP5.3も出たので、ZF2.0の続報も待たれる頃かと思います。(え!?まだいらない?Doctrine2.0はアルファリリースに感極まってる人がいると言うのに)。1系統の次のミニバージョンアップZF1.10.0のロードマップが先ごろ出されました。 http://framework.zend.com/roadmap/1.10.0 この一覧にあるもの全てが実際に1.10.0梱包される気はあまりしないのですが、一覧で一番目を引くのは「Zend_Entity& Zend_Db_Mapper」*2のところでしょう。これは、ZFに関するいくつかのブログ記事でも知られるZFコントリビュータbeberleiにより
概要 † HTML_Emoji ライブラリをテンプレートエンジンに組み込むサンプルです。 次のような機能を Zend_View に追加します。 テンプレートに埋め込まれた絵文字を、キャリアに応じて自動的に変換します <?= ... ?> で囲まれた範囲の絵文字の変換 & HTML エスケープを自動的に行います $this->foo でなく $foo と書くことで変数の値を参照できます *1 docomo の携帯の場合は、Content-Type: application/xhtml+xml のヘッダを出力します なお、これはあくまでもサンプルということで、次のような機能の制限があります。 PC 用と携帯用のビュースクリプトは共通 文字エンコーディングは UTF-8 に固定 これでもそれなりに実用にはなると思いますが、 これとは別に、次のような機能も備えたテンプレートエンジンも開発しています
http://events.php.gr.jp/events/show/81 に参加&お話をしてきました。 Phpstudy44 Zend Frameworkが抱えている問題は多い。View more presentations from sasezaki. yandoさんのDPC09発表の補足を、偏った観点で行うと、 ・Zend Framework Workshopは1.8からリーダーにもなったコアデペロッパーのMatthew Weier O'Phinneyが務めた ・「Zend Framework in Action」の著者Rob Allenの発表もあった ・パンがおいしそう http://www.flickr.com/photos/akrabat/3615822277/ てところですね
現在のZend_Dbはモデルの扱いが面倒でありまだまだ改善の余地がある。(その点symfonyはモデルの扱いについてはPropelやDoctrineといった外部ライブラリに依存することで割り切っている。)ZFもせっかくの疎結合を売りにしているのだからモデル層についてはZend_Dbよりもっとよいものが使えれば、と思っていた。一方他の開発者も同じことを思っているようで、海外ではZFをDoctrineと組み合わせて使う試みがけっこう盛んなようだ。この分野ではこの記事が有名なようで、数カ国後に訳されている。今回はこれを日本語に訳してみた。誤訳・ぬけがあれば指摘してもらいたい。Doctrineには非常に興味があり、Zend_LogやZend_AuthといったZend_Dbと関わっているモジュールをもDoctrineで置き換えるための試みもあり、それらは後日紹介していきたい。 Ruben Verm
Polley Wong translated Zend Framework's dispatch process into an easy-to-read workflow diagram. Stepping through the critical steps of the dispatch process, you'll understand the relation between Front Controller, Dispacther, Helper, and Broker. You'll also have a good picture of what role they play and why they are there.
PHPでのDIコンテナのわかりやすい説明としては「最小のDIコンテナ in PHP」や「DIコンテナなんていらない」の中で説明されているし、DIコンテナをより詳細に推し進めた形としてはSeasar2のドキュメントか何かを見ていただいた方がいいと思います。DIコンテナは使いこまれた技術で基本概念や実装方法については知られていますので、ここでは、ZFを例にしてDIコンテナを使うメリットについて具体的に検討してみたいと思います。 Zend Frameworkを例にとると 前記事Zend_Application(1) - noopな日々で触れた下記のページにあるように、 http://www.infoq.com/jp/articles/drinking-your-guice-too-quickly DIコンテナはサービスロケーターから進化する流れがわかりやすいわけですが、それらを前提的な話として、
SVNに1.8のリリースタグが作られました。いよいよZend_Applicationがリリース待ちですね。 というわけで、試してみました。 マニュアル(英語版)はここでリリース済み、日本語版も間もなく出る?でしょう。 ファイルリストはこんな感じ Application.php Application │ │ Exception.php │ ├─Bootstrap │ Base.php │ Exception.php │ IBootstrap.php │ IResourceBootstrap.php │ ├─Module │ Autoloader.php │ Bootstrap.php │ └─Resource Base.php Db.php Exception.php Frontcontroller.php IResource.php Modules.php Session.php Vie
ZendFrameworkのファイルをバックエンドとしたキャッシュは他のコンポーネントや拡張を必要としないのでお手軽に実施できます。 ただ、キャッシュエントリーが多くなるとキャッシュのクリアーなどで若干問題が発生するかもしれません。 複合的な要因で発生するようなので再現性や検証が難しいのですが。 事例:_cleanメソッド内でタイムアウト 高負荷なサイトでキャッシュの全クリアを実施したときに、Zend_Cache_Backend_File::_clean()のforeachループ内のis_fileとis_dirでタイムアウトして落ちるというケースがありました。(元々高負荷な状況ですので、30秒タイムアウトというのは余裕のあるラインではないのですが) 状況としてはユーザーリクエストで発生していたので、automatic_cleaning_factor による期限切れキャッシュなどの掃除が大量
携帯電話向けに、どうしても件名と本文に半角カナを入れる必要があり、数時間格闘したら、ようやく Zend_Mail で半角カナを送信することができました。 ドコモ、au、ソフトバンクで文字化けしないことを確認しました。Zend Framework のバージョンは、1.7.5 です。 sub send_mail($params = array()) { // subject $subject = mb_convert_encoding($params['subject'], 'JIS', 'SJIS'); // body $body = mb_convert_encoding($params['body'], 'JIS', 'SJIS'); // from_name if ( isset($params['from_name']) ) { $params['from_name'] = mb_e
お仕事で ZF アプリを作っていると、パフォーマンスも考えなくてはいけません。とりあえずこんな改善策をやってみました。 realpath キャッシュ PHP 5.1 からは絶対パスを使うと realpath キャッシュというのが効いて、パフォーマンスが改善するようです。幸い、ZF のアプリでは、index.php が置いてある場所だけがわかれば、あとはそこから引けるので、以下のように値を設定しておきます。 define('APPLICATION_PATH', realpath(dirname(__FILE__))); include_path 最適化 Zend Framework のパフォーマンスガイドにこうあります。 クラスの読み込み速度を上げるためにできる簡単な方法のひとつに、 include_path に気をつけるということがあります。特に大切なのは次の 4 つです。 絶対パス (あ
これで Zend_Layout も Zend_View_Helper も使えるはず。 レイアウトは {$layout->content} ヘルパーは {$helper->Form()} みたいに呼び出す。 Zend_View_Abstract を継承して Smarty に必要な部分だけ上書き、という作り。 なのでヘルパーとかフィルターとかはZend_View と同じように使えるはずです。 (若干投げやりかもしんない。) ソースの色づけは今度やります。 <?php /** * Smarty用ビュースクリプト */ class My_View_Smarty extends Zend_View_Abstract { /** * Smarty object * @var Smarty */ protected $_smarty; /** * 文字列のエスケープに使う関数 * @var string
In this post I’ll demonstrate how to use the Zend Framework to quickly and easily develop a Web application that consumes a Web API as a Web service. The Zend Framework puts heavy emphasis on Web services. This is a good thing, considering the amount of Web services out there that can help lower costs and increase the value of your site. The various steps that are involved in creating a Web servic
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く