PHP里的單例類寫法實(shí)例
更新時(shí)間:2015年06月25日 09:58:52 投稿:junjie
這篇文章主要介紹了PHP里的單例類寫法實(shí)例,本文直接給出代碼實(shí)例,需要的朋友可以參考下
PHP里的單實(shí)例類在進(jìn)行數(shù)據(jù)交換,節(jié)省內(nèi)存上還是很有意義的。寫個(gè)簡(jiǎn)單例子。
類1,單實(shí)例類本身:
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,使用前述單實(shí)例類的應(yīng)用類:
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();
}
}
最后是調(diào)用的地方:
$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());
最后的顯示結(jié)果:
string'SINGLEA CHANGED: ' (length=17) int110 string'SINGLEB CHANGED: ' (length=17) int-400
相關(guān)文章
Codeigniter實(shí)現(xiàn)發(fā)送帶附件的郵件
這篇文章主要介紹了Codeigniter實(shí)現(xiàn)發(fā)送帶附件的郵件的方法,涉及Codeigniter中attach方法的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03
Thinkphp5+Redis實(shí)現(xiàn)商品秒殺代碼實(shí)例講解
這篇文章主要介紹了Thinkphp5+Redis實(shí)現(xiàn)商品秒殺代碼實(shí)例講解,代碼和步驟講解的很清楚,有需要的同學(xué)可以借鑒參考下2020-12-12
PHP基礎(chǔ)學(xué)習(xí)之流程控制的實(shí)現(xiàn)分析
本篇文章介紹了,PHP基礎(chǔ)學(xué)習(xí)之流程控制的實(shí)現(xiàn)分析。需要的朋友參考下2013-04-04
PHP curl模擬登錄帶驗(yàn)證碼的網(wǎng)站
最近接了個(gè)項(xiàng)目,其中有需求是要登錄帶驗(yàn)證碼的網(wǎng)站,獲取數(shù)據(jù),但是我們不可能人為的一直去記錄數(shù)據(jù),想通過自動(dòng)采集的方式進(jìn)行,下面小編給大家?guī)淼南嚓P(guān)代碼,對(duì)php curl 模擬登錄帶驗(yàn)證碼的網(wǎng)站感興趣的朋友一起學(xué)習(xí)吧2015-11-11

