首页建站经验 PHP里的单例类写法实例

PHP里的单例类写法实例

PHP里的单实例类在进行数据交换,节省内存上还是很有意义的。写个简单例子。类1,单实例类本身:class UTIL {private static $instance;public function get() {if (!self::$inst…

PHP里的单实例类在进行数据交换,节省内存上还是很有意义的。写个简单例子。

类1,单实例类本身:

class UTIL {

private static $instance;

public function get() {

if (!self::$instance) {

self::$instance = new UTIL();

}

return self::$instance;

}

public $number = 10;

public function change($num) {

$this->number += $num;

}

public function getNum() {

return $this->number;

}

}

类2,使用前述单实例类的应用类:

class SINGLEA {

private $numInst;

function __construct() {

$this->numInst = UTIL::get();

}

public function change($num) {

$this->numInst->change($num);

}

public function getNum() {

return $this->numInst->getNum();

}

}

类3,同类2:

class SINGLEB {

private $numInst;

function __construct() {

$this->numInst = UTIL::get();

}

public function change($num) {

$this->numInst->change($num);

}

public function getNum() {

return $this->numInst->getNum();

}

}

最后是调用的地方:

$instA = new SINGLEA();

$instA->change(100);

var_dump('SINGLEA CHANGED: ');

var_dump($instA->getNum());

$instB = new SINGLEB();

$instB->change(-510);

var_dump('SINGLEB CHANGED: ');

var_dump($instB->getNum());

最后的显示结果:

string'SINGLEA CHANGED: ' (length=17)

int110

string'SINGLEB CHANGED: ' (length=17)

int-400

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/17590.html
上一篇php异常处理方法实例汇总
下一篇 php header函数的常用http头设置
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部