国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

php中注冊器模式類用法實例分析

2024-04-25 20:43:06
字體:
來源:轉載
供稿:網友

本文實例講述了php中注冊器模式類用法。分享給大家供大家參考,具體如下:

注冊器讀寫類

Registry.class.php

<?php

/**

* 注冊器讀寫類

*/

class Registry extends ArrayObject

{

/**

* Registry實例

*

* @var object

*/

private static $_instance = null;

/**

* 取得Registry實例

*

* @note 單件模式

*

* @return object

*/

public static function getInstance()

{

if (self::$_instance === null) {

self::$_instance = new self();

echo "new register object!";

}

return self::$_instance;

}

/**

* 保存一項內容到注冊表中

*

* @param string $name 索引

* @param mixed $value 數據

*

* @return void

*/

public static function set($name, $value)

{

self::getInstance()->offsetSet($name, $value);

}

/**

* 取得注冊表中某項內容的值

*

* @param string $name 索引

*

* @return mixed

*/

public static function get($name)

{

$instance = self::getInstance();

if (!$instance->offsetExists($name)) {

return null;

}

return $instance->offsetGet($name);

}

/**

* 檢查一個索引是否存在

*

* @param string $name 索引

*

* @return boolean

*/

public static function isRegistered($name)

{

return self::getInstance()->offsetExists($name);

}

/**

* 刪除注冊表中的指定項

*

* @param string $name 索引

*

* @return void

*/

public static function remove($name)

{

self::getInstance()->offsetUnset($name);

}

}

需要注冊的類

test.class.php

<?php

class Test

{

function hello()

{

echo "hello world";

return;

}

}

?>

測試 test.php

<?php

//引入相關類

require_once "Registry.class.php";

require_once "test.class.php";

//new a object

$test=new Test();

//$test->hello();

//注冊對象

Registry::set('testclass',$test);

//取出對象

$t = Registry::get('testclass');

//調用對象方法

$t->hello();

?>

希望本文所述對大家php程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙山县| 安仁县| 临海市| 天津市| 彩票| 凤城市| 漳州市| 恩施市| 时尚| 枞阳县| 许昌县| 长垣县| 怀远县| 江门市| 个旧市| 休宁县| 五家渠市| 伊吾县| 昌邑市| 密云县| 通城县| 南投市| 高邮市| 德庆县| 建湖县| 界首市| 乡城县| 藁城市| 吉林省| 白城市| 伊春市| 太谷县| 海伦市| 盐池县| 贵州省| 龙口市| 苍南县| 稻城县| 丰都县| 望谟县| 富裕县|