PHP

久々にPHPで適当なコードを書く。

PHP

1〜2年くらいぶりにPHPでコード書いた。 最初&$mとか書いてた JavaScriptと違って''は\がエスケープシーケンスとして働かないので正規表現パターンを文字列で書くには便利かも preg_match_all()便利だな はてな記法忘れててMarkdownのつもりでリストの'-'を'…

コンストラクタは継承される

'; } } class Sub extends Base{} class Sub2 extends Base{ public function __construct(){} } $sub = new Sub('hoge'); // "hoge"と出力される $sub2 = new Sub2('fuga'); // 何も出力されない ?> 出力 hoge 子クラスで定義しない場合、親クラスのコンス…

例外クラス一覧

例外クラスツリー Exception |-- LogicException | |-- BadFunctionCallException | | |-- BadMethodCallException | |-- DomainException | |-- InvalidArgumentException | |-- LengthException | |-- OutOfRangeException |-- RuntimeException |-- Unexp…

Windows版PHP 5.3.2にPEARパッケージマネージャを入れる

PHP

ちょっと手間取ったのでメモ。以降はWindows版PHP5.3.2がインストールされているものとして話を進める。 PHPのインストールフォルダを{PHP}と記す。Windows版PHPにはインストール時にPEARパッケージマネージャが付属していないようなので、別途インストール…

Zend Server CE5.0 for Winをインストールしてみた

PHP

入れ方。以下、Windows版をインストールすると仮定する。実際に入れたときの環境はVista。 http://framework.zend.com/download/latestからZend Server CEのFree Downloadボタンを押す。 Zend Server - The fastest way to enterprise PHPの下部の(EXE) xx.x…

PHPのnewで生成したインスタンスのメソッド呼び出しについて

追記(2010/04/18): new演算子で生成したインスタンスを一旦変数に入れないといけないのは、どうやらPHP4など古いバージョンの場合らしい。PHP5では直接書けるぽい。 new演算子で生成したインスタンスは、一度変数に代入するなどしないと、メソッドが呼び出…

PHPの引数の数について

PHP

関数・メソッドの定義時に指定した仮引数の数より多く渡された分に関しては、PHPは何もいわない。逆に、渡された引数の数が足りない場合は、足りない引数の数だけWarningが発生する。調べた環境 PHP 5.2.9-2 ".func_num_args().'<br>'; foreach( func_get_args(…

PHPでクラスのインスタンスのprotected/privateプロパティを取り出してみる

ソースコード。

PHPでの参照渡し引数の省略について

PHP

'; }else{ $arg = 'ほげほげ'; } } // 1. 引数を省略 Hoge(); // 2. 定数を渡す //Hoge(null); // エラー // 3. 未定義な変数を指定 Hoge($fuga); var_dump($fuga); echo '<br>'; // 4. 定義済みの(nullの代入された)変数を指定 $fuga = null; Hoge($fuga); var_…

PHP 4.X と PHP 5.X でのクラスの定義 (まだ途中)

PHP 4.X member; } // メンバ変数 var $member = 0; // 定数による初期化のみが可能 } /* 注意 * ・"stdClass"という名前は使用できません。 * ・__sleepおよび__wake…

include_path設定オプションにパスを追加

PHP

// include_pathの値を設定 // include_pathの値を取得 // OSに依存しないincludeパスの区切り文字