Factory Methodパターン

<?php
class Foo {
    private $v1 = null;
    private function __construct($options) {
        $v1 = $options['v1'];
    }
    public static function getInstance($options) {
        return new Foo($options);
    }
}

ダメ

$obj = new Foo(array('v1' => 100));
PHP Fatal error:  Call to private Foo::__construct() from invalid context in /home/taro/tmp/1.php on line 12

OK

$obj =  Foo::getInstance(array('v1' => 100));
object(Foo)#1 (1) {
 ["v1":"Foo":private]=>
 NULL
}

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2012-01-18 (水) 18:14:21 (2349d)