PHP里的单例类写法实例
这篇文章主要介绍了PHP里的单例类写法实例,本文直接给出代码实例,需要的朋友可以参考下
PHP里的单实例类在进行数据交换,节省内存上还是很有意义的。写个简单例子。
类1,单实例类本身:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
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,使用前述单实例类的应用类:
?
1 2 3 4 5 6 7 8 9 10 11 12 |
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:
?
1 2 3 4 5 6 7 8 9 10 11 12 |
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(); } } |
最后是调用的地方:
?
1 2 3 4 5 6 7 8 |
$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()); |
最后的显示结果:
?
1 2 3 4 |
string'SINGLEA CHANGED: ' (length=17) int110 string'SINGLEB CHANGED: ' (length=17) int-400 |

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

Dreamweaver Mac版
Alat pembangunan web visual

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini