タグ

ブックマーク / gene.hatenablog.com (13)

  • Snow Leopard に移行した際に出会ったトラブル - Memo

    ようやく落ち着いてきたのでメモメモ。 MacVim-Kaoriya で PHP デバッグ用のプラグインがエラーになった(解決済み) MacVim KaoriYa 2009091 で起きた現象 - Memo 最新のバージョンで動く。 PHP をソースからコンパイルした際に出るエラー(解決済み) http://moudamekamoshirenai.g.hatena.ne.jp/onumerane/20090905/1252137013 configure の前に、LIBS=-lresolv をすれば make でこけることなくビルドできる。 Leopard 時代によく出てた、iconv がらみのエラーは、--with-iconv=/opt/local と MacPorts の iconv を指定すれば出なくなった。 また、openssl がらみで起きた不具合は同じように、--with-ope

    Snow Leopard に移行した際に出会ったトラブル - Memo
    wdr_s
    wdr_s 2009/09/28
    Snow Leopardでのトラブルいろいろ。
  • PHP カンファレンスに行ってきた - Memo

    去年に引き続き、今年も行ってきた。 メモはとってたけど、IT イベント史上最速*1のレポートが詳しいのでそちらを是非。 id:riaf++, id:wozozo++ 興味深かったのが、Cake3 ではより Zend Framework みたく外部の FW からコンポーネントとして使用できるという話しだったり、symfony-components でスタンドアロンのライブラリとして使えるという話しが面白かった。 特に symfony の sfYaml は興味深い。 id:moriyoshi さんの PHP の内部構造の話しも興味深かった。 もっともカスタマイズの仕方を見ても実行に移す人が何人いるか分からないけどw 公開されているカスタマイズを体に取り入れられたらもっと素敵になるんだろうなぁと思う。 Q4M と Flare の話しを一番楽しみにしていたけど、期待通り興味深かった。 今後 Q4

    PHP カンファレンスに行ってきた - Memo
  • Zend_Application を使う(3) - Memo

    Zend_Application での設定ファイルの読み込み方法が id:noopable さんの所で紹介されている。 クラスリソースで追加読み込みする Bootstrapクラス内で_initConfig()みたいなメソッドを定義しておくことで、自由に追加のオプションをロードできると思います。そういう方法もあり。 Zend_Application (5) 実戦的使い方 - noopな日々 自分が取ったのはこの方法。 設定ファイルを読み込むラッパークラスを作ったので、設定ファイルは全てそこ経由で読み込むという仕様にしている。 アプリケーション全体で使用するような設定値はブートストラップで一括して読む方が良いと思うけど、個々の処理の中で設定ファイルを限定的に読みたいという事があるのでクラスを作った。 <?php // Zend_Config オブジェクトが返ってくる $config = Gen

    Zend_Application を使う(3) - Memo
  • Zend_Application を使う(2) - Memo

    ブートストラップ周りをいじりだしてようやく 1.7x と同じ物が動くようになった。 設定ファイルのお話 サンプルやドキュメントでは application.ini にゴリゴリ view や session の設定を書かれてるのが多い。 デフォルトのブートストラップを使う分には良いのかもしれないけど、更に柔軟性を持たせたかったので分割した。 app.ini フロントコントローラや PHP の設定 database.ini データベースの接続情報 log.ini ロギングの設定 plugin.ini プラグインの設定 session.ini セッションの設定 path.ini オートロードの設定 routing.ini ルーティングの設定 view.ini テンプレートの設定 で、_initLog() とか _initRouting() みたいなのをブートストラップに書いて処理をするように。

    Zend_Application を使う(2) - Memo
  • Zend_Application を使う - Memo

    Zend_Application は DI コンテナで高度に抽象化された (ry オフィシャルのドキュメントでは設定ファイルに依存するような値を書いて、 Zend_Application を生成する際に設定ファイルを渡してやってる。 ディレクトリ構成は以下のような感じにしたい。 app |-- Gene.php |-- configs | `-- app.ini |-- modules | `-- index | |-- controllers | |-- services | `-- models |-- layouts |-- locale `-- views |-- helpers `-- scripts `-- index `-- index `-- index.phtmlブートストラップ自体は library の下に Gene_Bootstrap と置く事にして、 Gene.ph

    Zend_Application を使う - Memo
  • ログ出力時と同時にメールで通知する方法 - Memo

    保守とかしているとログは非常に重要。 ログインできないとか、エラーが出たんだけどとかユーザーからの問い合わせで調査する事が良くある。 それとは別にクリティカルなエラーとかが出た場合はログを出力しつつ、通知メールを送信したい場合がある。 そういう場合は、 Zend_Log_Writer_Mock を使用すると便利。 30.2.5. モックによるテスト Zend_Log_Writer_Mock は非常にシンプルなライターです。 受け取った生のデータを配列に格納し、それを public プロパティとして公開します。 http://framework.zend.com/manual/ja/zend.log.writers.html#zend.log.writers.mock <?php $writer = new Zend_Log_Writer_Stream('/path/to/log'); $l

    ログ出力時と同時にメールで通知する方法 - Memo
  • Dwoo を試してみた - Heavens hell

    PHP5 版 Smarty と言われる Dwoo を試してみた。 Dwoo には Framework Adapter として Zend Framework があるので*1それを使ってみた。 Dwoo をダウンロードして展開すると、dwoo/Dwoo/Dwoo/Adapters/ZendFramework/View に Zend_View_Abstract から継承したクラスがあるので、それを Zend_Controller_Action_Helper_ViewRenderer を使用して、Zend_Controller_Action_HelperBroker に追加する。 <?php $options = array( 'engine' => array( 'compileDir' => '/path/to/compileDir', 'cacheDir' => '/path/to/cach

    Dwoo を試してみた - Heavens hell
    wdr_s
    wdr_s 2008/11/27
  • PHP カンファレンス 2008 に行ってきた - Memo

    凄く楽しかった! 当は懇親会も出たかったが、新幹線の時間もあったので断念。 多分明日以降もっと詳しいレポートが出ると思うので、軽くレポートだけ。 # かいたメモをそのまま貼付けようかと思ったけど、長くなるしまとまってないので・・・。 基調講演 (廣川 類さん) PHP のシェアとかの話 PHP4 が 2008/8/8 に 終了 PHP5.3 に搭載されるであろう機能の紹介 PHP5.3 は PHP 6 とのつなぎで出す予定だったけど、バックポートされる機能もある Unicode mbstring 系の扱いをどうするのか。 Pecl に移行? Zend Engine1 互換モードは 5.3 で廃止 ガベージコレクタ改良 循環コレクタ、パフォーマンスの向上 (メモリ使用量が 1/2 〜 1/22 になる) 5.3 からデフォルトで設定される mysqlnd (MySQL Native Dri

    PHP カンファレンス 2008 に行ってきた - Memo
  • Re:ENT_QUOTES脳? - Memo

    突っ込み頂いたから返信します。 via 岩隆史の日記帳 さん 「こんにちは」から始まる1行のみmain.phpに書かれているということだろう。 このコード、htmlspecialcharsの第2引数が「ENT_QUOTES」でなかったらどんな問題があるというのか。私にはまったく分からない。 「いや、問題がある」という方は、高木浩光さんの下記記事も批判してみてはどうか。 http://d.hatena.ne.jp/IwamotoTakashi/20080411/p1 こんな簡単なコードに一々 目くじら立てて、ENT_QUOTES 漏れを突っ込むなよって事でしょうか? それなら「セキュリティを気にしましょうね」と啓蒙している web デザイナ向けの記事で、エスケープ漏れのあるコードを提示していることです。 これを読んだ PHP 初心者が htmlspecialchars に第二引数、第三引数

    Re:ENT_QUOTES脳? - Memo
    wdr_s
    wdr_s 2008/04/13
    追記が謙虚なのでお手本にしたい。
  • Zend_Layout で ビュー以外のコンテンツを表示 - Memo

    Zend_Layout のドキュメントに、サンプルレイアウトがある。 http://framework.zend.com/manual/ja/zend.layout.quickstart.html#zend.layout.quickstart.example で、ドキュメントを読んでも、 <?php echo $this->layout()->navi ?> <?php echo $this->layout()->sidebar ?> をコントローラ側で Zend_Layout に設定する方法が書いてなかった。 # Zend_Layout を単体のコンポーネントとして使用する場合の方法は書いてある。 単体のコンポーネントと同じように、以下の様にすれば出来るかと思ったが、出来なかった。 <?php // $navi、 $sidebar は他のテンプレートを読み込んだ状態 $this->_he

    Zend_Layout で ビュー以外のコンテンツを表示 - Memo
  • Zend_Layout で Smarty を使う - Memo

    Zend Framework 1.5 PR の Zend_Layout をいじくる続き。 デフォルトの Zend_View を使用して Zend_Layout で表示できるのを確認したので、 今度はビューオブジェクトに Smarty を使用してみる。 19.4.1. ビューオブジェクトのカスタマイズ Zend_Layout では、 Zend_View_Interface を実装した任意のクラスや Zend_View_Abstract を継承した任意のクラスを用いて レイアウトスクリプトをレンダリングすることができます。 独自のビューオブジェクトを単純に constructor/startMvc() のパラメータとして渡すか、 あるいはアクセサ setView() で設定します。 http://framework.zend.com/manual/ja/zend.layout.advanced

    Zend_Layout で Smarty を使う - Memo
  • Zend_Layout で Smarty を使う 2 - Memo

    Zend_Layout で Smarty を使う - Memo の続き。 Layout の表示はできたが、コンテンツとなるページが表示されなかった。 コンテンツのテンプレートは Zend_Controller_Action_HelperBroker::addHelper($viewRender); を使って、自動的に読み込まれる。 Zend_View を使った場合は、 <?php $this->layout()->content ?> とすれば、コンテンツが表示された。 Smarty も同じように、 {$layout.content} とかすれば出来ると思ったけど、Layout のテンプレートに content がアサインされていない。 ドキュメントを読むと以下のように書いてあった。 Zend_View の実装がすべて同じというわけではない Zend_Layout では Zend_View

    Zend_Layout で Smarty を使う 2 - Memo
  • Zend Framework 1.5 の新しい機能 - Memo

    ふと Zend Framework のブログを読んでいたら、もうすぐリリースされるであろう、Ver1.5 の新機能について記述があった。 * Zend_Auth_Adapter_Ldap * Zend_Build/Zend_Console * Zend_Controller additional action helpers, including ContextSwitch/AjaxContext, Json, and AutoComplete * Zend_Form * Zend_InfoCard * Zend_Layout * Zend_OpenId * Zend_Search_Lucene improvements, including wildcard search, date range search, fuzzy search, and Lucene 2.1 index fil

    Zend Framework 1.5 の新しい機能 - Memo
  • 1