国产探花免费观看_亚洲丰满少妇自慰呻吟_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程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 田林县| 玛多县| 宾阳县| 乌恰县| 定襄县| 镇江市| 徐汇区| 子长县| 临朐县| 冀州市| 修文县| 五峰| 绵阳市| 南涧| 洮南市| 安溪县| 万载县| 郓城县| 南京市| 尼勒克县| 林口县| 富川| 榆树市| 尖扎县| 田东县| 榆林市| 永和县| 梓潼县| 重庆市| 双鸭山市| 宣恩县| 韩城市| 柳河县| 南开区| 建始县| 巩留县| 宾阳县| 若尔盖县| 东乌珠穆沁旗| 江油市| 信阳市|