タグ

ブックマーク / localdisk.hatenablog.com (6)

  • Perl vs PHP と言われてもなぁ… - localdisk

    僕の尊敬する Erogeek のゆーすけべーさんがこんなエントリを書かれてました。 404 Not Found - ゆーすけべー日記 …読まれましたか? このエントリでは、結論としてWebの開発から小物スクリプトまでPerlに軍配が上がるとされていますが、僕としてはPerl はライブラリを入れないとちょっとした処理も書けない不便な言語としか読めませんでした。 そして上記エントリは比較記事として PHP のコードがないという点が不完全です。なので僕が PHP コードを書いてみたよ。以下ライブラリを使用しない PHP コード。 <?php $dom = new DOMDocument(); @$dom->loadHTML(file_get_contents('http://yusukebe.com')); $nodes = $dom->getElementsByTagName('h2'); f

    Perl vs PHP と言われてもなぁ… - localdisk
  • 簡易 Migration ツール Ekot(エコー) を作ったよ - localdisk

    1回書いたエントリが消えちゃったのでやっつけで書いちゃうよ。 Rails っていうのは僕にとってそう魅力的でないけれど、1つだけ羨ましい機能がある。それが Migration. あまりに羨ましすぎて、PHPJava のお仕事でも Railsプロジェクトを作って Migration の機能だけ使ったりしてた。でも、それもめんどいので PHP 製で探し始めたところあるにはあるが、ORM の付属だったり array で定義をゴリゴリ書いたりして性にあわないので、自分で作ることにした。 localdisk / Ekot — Bitbucket ダウンロードはここから ekot-0.0.1.zip をダウンロードして下さい。 使い方 解凍したらコマンドプロンプトに「php ekot generate [任意の名前]」 すると「migrate」ってフォルダに「_タイムスタンプ任意の名前.ph

    簡易 Migration ツール Ekot(エコー) を作ったよ - localdisk
  • テンプレートエンジン Smoochy を公開します - localdisk

    Twitter で再三「リリースするよ」とか言っておきながら全然出来ていませんでしたが、せっかくのクリスマスなので、公開してみることにしました。コードがかなり汚いですが、一応意図通り動いてますので。お正月とかにドキュメント書いたりリファクタリングするつもりです。 名前は Smoochy(すむーちー) です。由来は作ってる時によく聴いていた坂龍一のアルバム名から。 以下説明。 はじめに Smoochyとは? Smoochy は PHP で作られたテンプレートエンジンです。Smoochy は Pure HTML をテンプレートとして使用するため、当の意味で「デザインとロジックの分離」を実現しています。 独自タグや独自属性、ましてや {$hogehoge} のようなマークアップも必要ありません。 インストール bitbucket.org より Smoochy.zip をダウンロードします。

    テンプレートエンジン Smoochy を公開します - localdisk
    bigbro
    bigbro 2009/12/25
    劣化DIのような発想。Teeda を思い出した。似たようなものを作った覚えがある
  • PHPでサービスをリリースする際の5つのの注意点(エラー処理) - localdisk

    2009/5/28 2:00くらいからOpenpear :: Open PEAR Repository Channelが落ちています。 Warning: require_once(PEAR/Server2.php) [function.require-once]: failed to open stream: No such file or directory in …(ファイル名は省略) Openpear :: Open PEAR Repository Channel …しょんぼりしてしまいました。Openpear :: Open PEAR Repository Channelは素晴らしいサービスですし、僕もServices_Backlogをリリースした際お世話になりました。猿も木から落ちるというか弘法も筆の誤りというかこういったこともあるんですね。 なので自戒も兼ねてPHPでサービスを

    PHPでサービスをリリースする際の5つのの注意点(エラー処理) - localdisk
  • PHPでJava風のHashMapを作ってみた - localdisk

    仕事中にカッとなって作った。特に反省はしていない。 終電が迫っているのでとりあえずソースだけ貼っておく。こういったちょっとしたソースを気軽に置いておける場所とかがあるのかな? CodeReposは僕にはちょっと敷居が高い。というか怖い。 ソースの解説は帰宅してからということで。電車がやばい!帰ってご飯べたので解説。 entrySet/keySet/valuesメソッドを追加。 解説 大したものでもないですが、一応。 PHP5になってSPL(Standard PHP Livrary)というクラスライブラリが導入されてます。 PHP: SPL - Manual あまり意識されてない方でもException自体は馴染みがあるのではないでしょうか。今回作成したものもSPLのArrayObjectを拡張したものです。結構ちゃんと使えるメソッドが揃っていてちょっと手を加えるだけでJavaのHashM

    PHPでJava風のHashMapを作ってみた - localdisk
    bigbro
    bigbro 2009/08/26
    HashMapの実装
  • PHPでAOPしてみた - localdisk

    PHPでDIはたまに見かけるけどPHPでAOPってのはあまりみないですね。S2.PHP5くらいしかない。 The Seasar Project - S2Container.PHP で、AOPしたいってだけでS2.PHP5をいれるのもアリでしょうけど、もっとちっちゃく利用したかったのでプロトタイプを作ってみた。 アスペクトクラスを書く <?php class Aspect { private $clazz; private $obj; private $intercepters = array(); public function __construct($obj) { if (is_null($obj) || !isset($obj) || !is_object($obj)) { throw new Exception('オブジェクトじゃないとだめ'); } $this->obj = $o

    PHPでAOPしてみた - localdisk
    bigbro
    bigbro 2009/08/26
  • 1