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

您的位置:首頁技術文章
文章詳情頁

還是說php實現singleton模式

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

這天考慮用php來singleton一下,看到一篇比較全面的總結 -- singleton模式的幾種實現.其中總結的php5的實現:

PLAIN TEXTPHP:

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

這段代碼拿來使用,不會太爽,因為一般都會繼承自MyClass,而$c = __CLASS__;獲取的始終是基類的類名,不可用。只能考慮找其它實現方法。

接著俺開始查看文章中的函數方式實現的singleton,實現的很不錯,缺點是類被實例化時不能帶參數,這里貼上俺的版本:

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下可以很爽的調用:

PLAIN TEXTPHP:

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

以前的幼稚版:單子模式(SINGLETON)的簡單實現

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

標簽: PHP
主站蜘蛛池模板: 日本免费不卡在线一区二区三区 | 亚洲免费在线视频观看 | 456亚洲视频 | 精品国产日韩亚洲一区二区 | 亚洲成人综合在线 | 日韩欧美中文字幕在线播放 | 国产精品爱久久久久久久小 | 欧美一级做一a做片性视频 欧美一级做一级爱a做片性 | 性欧美在线 | 亚州一级毛片 | 国产一区二区免费在线 | 久久福利影视 | 亚洲一区视频在线播放 | 国产日韩欧美在线观看播放 | 一区二区三区视频网站 | 成人区精品一区二区不卡亚洲 | 久青草国产在线 | 黄网在线观看免费网站台湾swag | 欧美亚洲综合网 | 欧美在线观看一区二区 | 永久免费看毛片 | 久久一区二区三区免费 | 美女wc| 337p粉嫩日本亚洲大胆艺术照 | 成人精品一区二区三区中文字幕 | 免费视频久久看 | 日韩精品视频美在线精品视频 | 国产成人狂喷潮在线观看2345 | 欧美视频在线一区 | 欧美视频一区在线观看 | 五月六月伊人狠狠丁香网 | 欧美视频久久久 | 国产欧美日韩精品在线 | 国产精品国内免费一区二区三区 | 成人一级大片 | 一级欧美过瘾大片 | 国产精品情侣久久婷婷文字 | 最新欧美精品一区二区三区不卡 | 精品国产90后在线观看 | 日本www在线视频 | 一区二区三区四区五区六区 |