タグ

php4に関するmonochromeganeのブックマーク (3)

  • cloned.log - PHPの参照渡しは関数の引数だけじゃない

    PHPの参照渡しについて。参照渡しについて説明しているサイトでは圧倒的に関数の引数を例にしていることがほとんど。例えば以下のような感じ。 <?php $v = "default"; rewrite($v); print $v; function rewrite(&$arg) { $arg = "HelloWorld"; } これで「HelloWorld」と出力される。$vを直接変更していないのに、rewrite関数内での変更が$vに対して有効になっていると解く。関数の引数に「&」を付けなければ上書きされることはない(値渡し)。 最初はこれが一番判り易いけれど、もう一歩、変数代入の参照渡しと関数戻り値の参照渡しにも触れて欲しいところ。特に関数戻り値の参照渡しについて触れているサイトが当に少ない。 変数代入の参照渡しというのは以下のコードのような場合。 <?php $a = "default

    cloned.log - PHPの参照渡しは関数の引数だけじゃない
  • staticなプロパティの使いどころ - PHPで翻訳三昧

    PHP4とPHP5の違うところメモ第2段です。 PHP5からは、static を指定したプロパティは インスタンス化しなくてもアクセス出来るよう変わりました。 static キーワード 以下のようなオブジェクトの入れ物的な静的クラスがスマートに書けます。 PHP4、5のどちらも register::set($object) でオブジェクトを登録し register::get($className) で取りだします。 /** * PHP4 */ class register { var $instances = array(); function & get ( $className ) { $regster =& register::__getInstance(); if (array_key_exists($className, $regster->instances)) { retur

  • PHP4でデザインパターン(Singleton編) - Do You PHP?

    PHP4でデザインパターン(Singleton編) オブジェクト指向についてはまだまだ勉強中ですが、「PHPGoFのデザインパターンを実装したら、どんな感じになるんだろ?」と思ってしまったので、ちょっとずつやってみることにしました。 間違いやご意見がありましたら、遠慮なくツッコミを入れてくださいm(_"_)m 今回は、Singletonパターンです。このパターンを簡単に説明すると、「あるクラスのインスタンスが1つしか存在しないようにする」パターンで、コンストラクタを潰す(Javaではprivateにする)代わりに、インスタンスを得る(publicな)メソッドを用意します(以下のクラス図を参照)。以下が、サンプルコードになります。 ●Singleton.php <?php class Singleton { var $str_; /** * Javaでいうstaticメソッドな扱いで、参

  • 1