Menggunakan corak tunggal dalam ThinkPHP6
Corak tunggal ialah corak reka bentuk biasa yang memastikan bahawa kelas hanya mempunyai satu tika dan menyediakan pusat akses global. Dalam ThinkPHP6, mod tunggal boleh digunakan untuk mengurus pembolehubah global, sumber kongsi, dsb.
Berikut ialah contoh penggunaan corak tunggal dalam ThinkPHP6:
Kami mula-mula mencipta kelas mudah untuk demonstrasi Bagaimana untuk gunakan corak singleton. Seperti yang ditunjukkan di bawah, kelas ini hanya mempunyai satu sifat dan satu kaedah.
namespace apputil; class Singleton { private static $instance = null; private $count = 0; private function __construct() {} public static function getInstance() { if (self::$instance == null) { self::$instance = new Singleton(); } return self::$instance; } public function getCount() { return $this->count; } public function incrementCount() { $this->count++; } }
Dalam ThinkPHP6, kita boleh menggunakan kaedah tika tunggal make
yang disediakan oleh bekas untuk mendapatkan tikas tunggal. Apabila menggunakan kaedah make
, kami boleh menentukan nama tika atau menggunakan nama tika lalai. Berikut adalah untuk mendapatkan contoh tunggal bagi kelas Singleton
:
$singleton = app()->make('apputilSingleton::getInstance');
Seperti yang anda lihat, di sini kita perlu memasukkan Singleton::getInstance
sebagai nama contoh.
Kita boleh menggunakan pembolehubah $singleton
yang diperoleh di atas untuk mengakses sifat dan kaedah kelas Singleton
. Berikut ialah beberapa contoh kod:
$singleton->incrementCount(); echo $singleton->getCount(); // 输出 1 $anotherSingleton = app()->make('apputilSingleton::getInstance'); echo $anotherSingleton->getCount(); // 输出 1
Seperti yang anda lihat, kami hanya perlu mencipta tika tunggal sekali dan boleh menggunakannya di mana-mana sahaja, dan tika yang diperoleh adalah sama.
Nota:
make
untuk mendapatkan tika tunggal, adalah disyorkan untuk menggunakan ruang nama lengkap dan nama contoh untuk mengelakkan konflik cache bekas. Ringkasan:
Menggunakan mod tunggal dalam ThinkPHP6 boleh mengurus keadaan global dan sumber dikongsi dengan mudah Melalui kaedah make
yang disediakan oleh bekas, kami boleh mendapatkan mod tunggal dengan mudah Contoh contoh. Tetapi ambil perhatian tentang isu keselamatan benang dan gunakan ruang nama penuh dan nama contoh.
Atas ialah kandungan terperinci Menggunakan mod tunggal dalam ThinkPHP6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!