タグ

ブックマーク / mugeso.hatenadiary.org (5)

  • PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記

    メリークリスマス! PHP Advent Calendarもいよいよ24日目に突入です。 昨日はxhprofについてでしたね。僕もパフォーマンスチューニングの際に使っています。手軽に利用できるのでお勧めです。 さて、このエントリーでは表題の通りMVCについて書かせていただきます。これは、PHPカンファレンス2012&WordCamp Tokyo2012合同LT大会で発表した「やはりお前らのMVCは間違っている」で煽るだけだったこの問題をきちんと解説するものです。 この発表資料を公開するとPHPの枠を超えて広く閲覧いただき*1、また多くの方から突っ込みを戴きました。「LTだから」と言って逃げていた回答をして、気持ち新たに新年を迎えようと思います。 MVCとはなんなのか 間違いを指摘する前にMVCがそもそもどういうアーキテクチャであるのかを確認しなければいけません。 MVCは1970年代にパロ

    PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記
    hilde
    hilde 2012/12/25
  • HTTP_Request2でハマった - MugeSoの日記

    Net_CicindelaでHTTP_Request2を利用してるんですが、なぜかAgavi-0.10から呼び出すとNet_CicindelaがアクセスするURLのクエリ部分の&が&amp;になってしまう現象が起きました。 半日かけて調べた結果、HTTP_Request2が利用しているNet_URL2でデフォルトのクエリストリングの区切り文字をarg_separator.outputから得ていてAgavi-0.10がどこかでこいつを&amp;にしてしまっているらしいことが分かりました。 そこで、Net_Cicindela側で区切り文字の設定を変更してやるようにしました。 コードを追加しときます <?php $url = new Net_URL2('http://example.com/hoge'); $url->setOption(Net_URL2::OPTION_SEPARATOR_OU

    HTTP_Request2でハマった - MugeSoの日記
    hilde
    hilde 2009/08/29
  • Phar拡張のストリームラッパーでtar.gzファイルを開く - MugeSoの日記

    PHP5.3.0から標準で組み込まれるようになったPhar拡張ですが、こいつはPharアーカイブを扱うだけではなくtarやtar.gzも扱えます。また、それらを扱うためのストリームラッパーを提供しています。 ということで、ホントにPhar拡張を使ってtar.gzファイルを展開することなく直接扱えるか試してみました。 とりあえずreadfileしてみる [tanaka@delta phar]$ php -r 'readfile("phar://senkyo.tar.gz/senkyo/ikou/touhyo.txt", false);' その一票が日を救う。 GO!選挙!できた。選挙行きましょう。 opendirもできるらしいのでやってみる [tanaka@delta phar]$ php -r '$dh = opendir("phar://senkyo.tar.gz/senkyo");

    Phar拡張のストリームラッパーでtar.gzファイルを開く - MugeSoの日記
    hilde
    hilde 2009/08/29
  • CicindelaのwebAPIラッパをopenpearで公開 - MugeSoの日記

    これからPHP製レコメンデーションエンジンをリスペクトCicindelaな感じで作っていこうかと思っているわけですが、WebAPIに関しては申し分ないのでCicindelaのWebAPIPHPから叩くためのライブラリを作成して、openpearで公開しました。 仕事の時間に作ったので来なら会社ブログでアナウンスしたいところですが、弊社のブログは残念ながらiPhone専用のものしかないので、こっちに書いておきます。 http://openpear.org/package/Net_Cicindela pear/HTTP_Request2に依存しています。HTTP_Request2はalphaなのでインストールには注意が必要です。

    CicindelaのwebAPIラッパをopenpearで公開 - MugeSoの日記
    hilde
    hilde 2009/06/12
  • レコメンドエンジンを検討してみた - MugeSoの日記

    運営してるサイトへレコメンド機能を導入するため、レコメンドエンジンをどうするか検討している。 考えられる選択肢は現段階では3つ。 Cicindelaの導入 Vogooの導入 新規エンジンの構築 とりあえず、前者二つを比較検討してみる。 Cicindela Vogoo 実装言語 Perl PHP 対応DB MySQL >= 5.0 MySQL, PostgreSQL インターフェイス WebAPI PHPクラス インストール 全手動,キモイ*1 Webインターフェイスあり 柔軟性 ◎ × マニュアル 日語と英語 英語のみ ソースの美しさ ○ × 他への影響 設定次第 global変数で汚染 利用実績 livedoor クリップ他 映画生活 CicindelaはMySQLのMemoryストレージエンジン*2を用いたメモリ上の一時テーブルを中間テーブルに利用することで高速化を図っているっぽい。

    レコメンドエンジンを検討してみた - MugeSoの日記
    hilde
    hilde 2009/06/07
  • 1