タグ

ブックマーク / hatotech.org (11)

  • プロジェクトごとに外部ライブラリ格納場所を準備する - hatotech::kumatch

    例えば PEAR の場合だと、Linux のパッケージによる導入を行った場合などは /usr/share/pear, Windows 環境などでは PHP 実行環境直下の pear ディレクトリといった具合にグローバルなスペースにライブラリが格納されます。php.ini による include_path の設定もこのグローバルなスペースを指定しているので、皆さんが使用、もしくは開発している Web アプリケーションにおいても、この一箇所にまとめられているライブラリを利用しているかと思います。 これらライブラリを更新する場合、この一箇所を変更するだけで全ての Web アプリケーションが Ver.UP されることになるため効率がよいその一方で、全てに影響するとあってそうあっさりと更新ができない場合があったり、権限の問題で簡単に書き換えることができない(そもそも権限がない)、また Web アプリ

  • PHP4 と PHP5 で __get(), __set(), __call() を共存する方法 - hatotech::kumatch

    PHP4 と PHP5 で __get(), __set(), __call() を共存する方法 PHP5 では クラスの __get()、__set() および __call() をネイティブにサポートしています。 一方 PHP4 でも 4.3 以降 overload() を実行することで、クラスのオーバーロードを行うことが可能で、__get()、__set() および __call() を使用することができます。 しかしそれぞれのメソッドのインターフェース仕様が異なっているため、これらを普通に使用した対象クラスは PHP4 用もしくは PHP5 用という限定した存在になってしまいます。 しかし以下のようにすることで、PHP4, PHP5 の共存が可能になります。 例として Foo クラスにて __call() を実装してみます。 Foo.php <?php class Foo {

    aki77
    aki77 2007/05/23
  • PHP セミナー資料 - hatotech::kumatch

    家 ML の方でも投稿してますが、9月23日に行われた PHP 関西セミナーの資料の pdf 版がありますのでこちらにて。 PEAR HTML_QuickForm, HTML_QuickForm_Controller の概要解説、また両パッケージと Smarty の連携などを紹介してます。 http://hatotech.org/kumatch/datas/quickform.pdf 「QuickForm ってどんな感じ?」ライクな仕上りです。

    aki77
    aki77 2006/05/08
    PEAR HTML_QuickForm, HTML_QuickForm_Controller の概要解説、また両パッケージと Smarty の連携などを紹介
  • Maple: SD 3月号から 3.1.0 要素を足してみる - hatotech::kumatch

    aki77
    aki77 2006/02/20
  • Maple Day 発表資料 - hatotech::kumatch

    2006/01/28 に発表した Maple Day のスライドを公開します。 maple-20060128.pdf 特別 Maple みっちりな内容でもなく、その他の話や Bad ケースの話など色々させていただきました。

    aki77
    aki77 2006/02/01
  • PHP String_Random 0.3.2 - hatotech::kumatch

    aki77
    aki77 2006/01/24
    PHP5用の修正
  • PHP String_Random 0.3.1 - hatotech::kumatch

    一部の人にだけ大好評な PHP 版 String_Random が約一年ぶりに Ver.UP! 前回は 0.0.2 だったんですが、あまりにも鈍足過ぎるので繰り上げました。マイナーバージョンがこっそりついてるのは ITEMAN の陰謀により 0.3.0 で行った変更が無用のものになったためです :p 今回の目玉はスタティック呼び出しの実装!すげー超今更。 ということで一回だけの使用とかいうシチュエーションなら、わざわざ new しなくても、 String_Random::getRandRegex('[a-zA-Z0-9]{5,8}'); でいいです。 同セクション内で繰り返し生成するのであれば今までどおりの使用方法のが高速です。 <?php require_once('String/Random.php'); $st = new String_Random(); // randre

  • maple を分かりやすくして欲しいらしい - hatotech::kumatch

    自分で調べなさい。 どうやら Phrame スレッドでは、maple での Web アプリ作成を行う上で、その構造や考え方が重たいし分かりにくいと思われているようなので、いっちょ仕事として始めたプログラム歴一年のこのウンコが、付属サンプルからちょこっとだけ延長した例を元に少し書こうと思う。頼まれてもいないけどな。 サンプルではよくあるパターンとしてフォームの入力、確認、完了という遷移の例がある。じゃあその値をデータベースに格納するのは?単純に完了 action にてデータベースへ格納するようなクエリを発行する動作を execute に書くのもいいけど、maple ではこういう形を許容する。 まず maple module。 function setLogic(&$logic) { $this->logic =& $logic; } function execute() { $logic

  • maple: 多段 Injection 例 - hatotech::kumatch

    前回のmaple エントリのコメント欄より。 サンプルを作ってみたのですが、actionクラスに対してlogicをインジェクトすることは出来たのですがlogicに対してdaoをインジェクトすることができませんでした。 logic、daoはwebapp/components/以下に置き、maple.iniは以下のように書きました。 [Action] userLoginLogic = "ref:userLoginLogic" userDao = "ref:userDao" で、これのお返事をセコセコと書いていたら思いのほか長くなってしまったのでいっちょもう少し肉付けした上で1エントリこしらえてしまおうという企みです。 前提であり結論なのですが、ref: で A へ何らかの Component B を Injection する場合、その対象 B は DIContainer に入っている必要

  • maple: Smarty 変数 - hatotech::kumatch

    maple でのテンプレード にて Smarty 変数を用いる際、例えば都道府県を SELECT element として作る場合。 <select name="prefecture"> {html_options options=`action->getPrefectureList` selected=`action->getPrefecture`} </select> とかは出来ないので {action->getPrefectureList assign="prefectureList"} {action->getPrefecture assign="prefecture"} <select name="prefecture"> {html_options options=$prefectureList selected=$prefecture} </select> なんてことをする必要

  • http://hatotech.org/kumatch/archives/000463.html

    aki77
    aki77 2005/07/04
  • 1