国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

還是說php實(shí)現(xiàn)singleton模式

瀏覽:62日期:2024-02-08 08:42:19

這天考慮用php來singleton一下,看到一篇比較全面的總結(jié) -- singleton模式的幾種實(shí)現(xiàn).其中總結(jié)的php5的實(shí)現(xiàn):

PLAIN TEXTPHP:

class MyClass { private static $instance; public static function singleton() { if (!isset(self::$instance)) { $c = __CLASS__; self::$instance = new $c; } return self::$instance; } }

這段代碼拿來使用,不會(huì)太爽,因?yàn)橐话愣紩?huì)繼承自MyClass,而$c = __CLASS__;獲取的始終是基類的類名,不可用。只能考慮找其它實(shí)現(xiàn)方法。

接著俺開始查看文章中的函數(shù)方式實(shí)現(xiàn)的singleton,實(shí)現(xiàn)的很不錯(cuò),缺點(diǎn)是類被實(shí)例化時(shí)不能帶參數(shù),這里貼上俺的版本:

PLAIN TEXTPHP:

function getObj() { static $obj = array(); $args = func_get_args(); if(empty($args)) return null; $clazz = $args[0]; if(!is_object($obj[$clazz])) { $cnt = count($args); if($cnt> 1) { for($i = 1, $s = ''; $i <$cnt; $i++) $s[] = '$args[' . $i . ']'; eval('$obj[$clazz] = new $clazz(' . join(',', $s) . ');'); } else { $obj[$clazz] = new $clazz; } } return $obj[$clazz];}

在php5下可以很爽的調(diào)用:

PLAIN TEXTPHP:

getObj('MyClass', $param1, $param2)->myMethod();

以前的幼稚版:?jiǎn)巫幽J?SINGLETON)的簡(jiǎn)單實(shí)現(xiàn)

http://www.ooso.net/index.php/archives/182

標(biāo)簽: PHP
主站蜘蛛池模板: 成人网在线视频 | 国产精品专区第二 | 看a网站| 日本三级网站在线线观看 | 免费萌白酱国产一区二区三区 | 国产激情一区二区三区四区 | 美女黄影院 | 欧美高清一区 | 真人一级毛片免费观看视频 | 岛国在线永久免费视频 | 欧美成人aaaa免费高清 | 亚洲看片网站 | 国产精品亚洲欧美一级久久精品 | 亚洲欧洲国产成人精品 | 精品久久久久久久久久久 | 久久成人a毛片免费观看网站 | 久久亚洲天堂 | 怡红院免费的全部视频 | 国产成人精品久久一区二区三区 | 欧美ⅹxxxx视频| 国产萌白酱在线一区二区 | 午夜国产精品不卡在线观看 | 国产在线啪 | 国产精品国产国产aⅴ | 国产美女精品视频 | 亚洲羞羞裸色私人影院 | 女人张开腿让男人桶视频免费大全 | 久久这 | 情侣自拍啪啪 | 亚洲欧美精品国产一区色综合 | 国产一区二区三区高清 | 手机在线毛片 | 久久久久久久亚洲精品一区 | 99视频只有精品 | chinese农村野战videos | 精品一区二区三区免费观看 | 日本在线观看免费视频 | 国产女人伦码一区二区三区不卡 | 中文精品久久久久国产网址 | 国产亚洲精品国产第一 | 91情侣高清精品国产 |