2005-01-01から1年間の記事一覧

結合神話の必要性

雷に打たれました。神話を否定した天罰でしょうか。 雷っていっても本物じゃないですよ 結合の神話という雷です。 雷には次のように書かれていました。 世に満ち満ちるDBの全体数は、腐れDB >>> 優れた設計が施された、今にも神託が降りてこようかという…

RDB正規化のお話

なにやら正規化の話題が出てるので首を突っ込んでみる。 元ねたは正規化で悩んでた * 第三までは、雑念(実装効率とか)にとらわれずにきっちりと行う * 正規化を崩して良いのは、それ以降の話 * それ以前にやめる人は、RDBモデルの特性をちゃんと理解してい…

どうやらiiimとemacsの相性らしい

デスマ中にガリガリいってうざかったこれ どうやらiiimとemacsの相性の問題らしい。 iiimd起動した状態でemacsを立ち上げると再発した。 仕方がないのでIMをwnnに変更して場をしのぐことにした。

PHPらしいフレームワーク

PHP

komagataさんストーカー再び。 PHPの良さを生かしたフレームワークとは何か これいいじゃないですか。こういうの待ってました。 変数はよいとして、関数名ってスコープグローバルですよね。 衝突起こしませんかね?

NameSpaceはいるんじゃないの?

PHP

普段からPHPにNameSpaceがあればと思っている人に朗報 NameSpace再びらしい。Agaviでは修正されているが、Mojaviでクラス名が衝突してforwardできない問題があっる。 これ、絶対NameSpace必要だって。そう思うよ。ほんと。

あのーFC4ががりがり言い始めて動かないんですけど

ハッキリいっていまデスマっている。 それなのに開発用に使っているマシンがガリガリ言い出して反応しなくなった。 毎朝こんなことをやっているのかこいつは。もう数十分経つぞ。 仕方がないのでgoogleでニュースをみて、日記を書いている。 どうすればよい…

MRTG+RRDTool

サーバ監視のためにMRTGの設定を行っている。 本来なら別の人がやる予定だったのに。それはさておき、今回はMRTG+RRDTool+mrtg-rrdという構成を用いることにした。 まぁ有名だしいいんじゃないの程度で。で、落とし穴。 LogDirを設定したのにLogがLogDirにお…

Validatorの設計

昨日の続き 昨日はValidatorが子を持つといったが、これそんなことせずに、ValidatorManagerがValidatorをプールしておけばいいんじゃないかと。 重要なのはvalidate/action_name.iniで設定されたパラメータを持ったバリデータが識別されて、違う部分でも使…

groupの使い方

Mojaviの標準ValidatorManagerのgroupの使い方がわからなかった。 本家wikiは相変わらず死んでるし、フォーラム検索しても関係ないものばっか引っかかる*1ので調べられなかった。で、ソースをよんだところ、同一groupを指定した場合でrequiredがYesのパラメ…

Validatorはこんなのがいい

バリデータは子にバリデータを持てる 子のバリデータは名前をつけてセットする 子のバリデータをどう呼び出すかは親に依存 バリデータが子を持つというのは、配列を受け取ったときに要素のバリデーションを委譲したり、部分文字列のバリデーションを委譲する…

バリデータにほしいもの

Mojaviに足りないもののバリデータについて詳しく。まずはPHPがフォームから受け取る変数について考える <input type="text" name="hoge[]"> <input type="text" name="hoge[]"> <input type="text" name="fuga[foo]">上の記述でhogeが配列になるのは良く知られている。加えて下のようにするとキーを指定することもできる。さらに応用すると <input type="text" name="outer[inner_one][inner_one_one]">

Mojaviに足りないもの

Mojaviを使っていて足りないと思うものをあげてみる。 配列バリデータ コンソールコントローラ pearのオートロード自動化

Agaviに乗り換え?

MojaviのブランチとしてオープンでAgaviというフレームワークが作られているらしい。 Agavi PHP MVC Framework Mojaviの開発の滞りには嫌気が差し始めていたので、乗り換えてしまおうかと思う。 幸い小さな会社なのですんなりOKでそうだし。(ほんとにそれ…

RCまだー??

PHP

そろそろPHP5.1のRCが来るはず。 [14-Jul-2005] PHP 5.1 Beta 3 is now available! If all goes well, this beta release will be followed by a release candidate within a couple of weeks.

盲点だった

PHP

$_SERVER['REQUEST_URI']ってhtmlタグを含むことできるんですね。。。 5秒で作るセキュリティホールみるまで気にも留めてなかったorz しょうじきすまんかった。

HTTPのHEADメソッド

PHP

隠蔽されたファイルをダウンロードさせるスクリプトで HEADメソッドのリクエストに対してContent-Lengthヘッダフィールドを返したいのに、Content-Lengthを返せない。 としても、HEADメソッドのリクエストへのレスポンスにはContent-Lengthフィールド自体存…

腱鞘炎とか。

職業病の腱鞘炎について。haltさんのところより。 確かに、鬼のようにタイピングすると腱鞘炎になる。仕事として始める前から腱鞘炎やらなんやになっていた。もちろんコーディングの結果だけど。 慢性的に右肩甲骨の辺りがおかしい。首を前に傾けるとしびれ…

Vodafoneだめぽ

携帯サイトを扱っている関係上、いろいろな携帯電話にさわるが、ボーダフォンの端末はよろしくない。 重いし、動作が不安定だし、3Gになって大々的に参入してきた海外メーカーの機種は恐ろしく重いし。画面スクロールしないからテストどころじゃないんですよ…

画像変換

Image_transform http://pear.php.net/package/Image_Transform/download/0.9.0/ が更新されましたね。ってことで画像変換のお話。(Image_transformはまったく関係なし) 携帯向けサイトを作っていると、画像変換には画像容量の問題が付きまとってきます。 G…

genURLのバグ?

仕事中上司がなにやら困っている。 聞いてみると、genURLでエンコードされた半角スペースが遷移先できちんとデコードされずに+のまま残るとか。結論としてはgenULRがrawurlencodeではなくてurlencodeを使っていて、クエリを処理するときはrawurldecodeな感じ…

Exceptionの前にNoticeやWarning

Mojaviで開発をしていて時々起きる。 例外投げる前に配列の存在しないインデックス見てるよとNoticeがでたり、オブジェクトじゃないもののメソッド呼び出してるよとWarningでたり。 どうなんでしょ。

移動時間が無駄なので自宅で仕事。

なんとかキャリヤテスト間に合うかな?

第一引数nullのgenURLで絶対URLを生成させる

genURLは重要です。redirectと組み合わせるときはどうしても絶対URIでなければいけません。 ということでこの話題。 komagataさんのストーカーぽいですが許してください。komagataさんは当初 define('SCRIPT_PATH', strtolower(trim(array_shift(split("/", …

MappingSecurityFilter更新

アクションのgetCredentialメソッドで配列を返すと先頭から順にuserの権限をチェックして、 引っかかったところでforwardするように修正。 svn://www.mugeso.com/mojavi_extends/filter/MappingSecurityFilter/trunk に入ってます。

mojavi_extendsのsvnリポジトリ構成変更

なんとなく公開しいる(はず)のmojavi_extendsリポジトリの構成を変更 プロジェクトごとにtrunk,tags,branchを持つように /mojavi_extends/trunk/+-filter +-modules +-databaseから /mojavi_extends/+-filter+-trunk | +-tags | +-branch +-modules (以下…

UNIQUEなSessioIDを振る

PHP

元記事のp0tさんにもコメントつけてしまいましたが。 複数Webサーバ、単一セッション管理でセッションかぶっちゃう問題。 if(session_id()=='') { $Sid = ini_get('session.use_only_cookies') ? '_COOKIE' : '_REQUEST'; if (!isset(${$Sid}[session_name()…

他人のブログに長文コメントつけまくるのもアレなので

ブログはじめました。 planetPHPjapanに補足されることがあるのかとドキドキしながら書いていきます。