{"id":607,"date":"2025-06-11T10:45:48","date_gmt":"2025-06-11T02:45:48","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/sjjg\/607.html"},"modified":"2025-06-11T10:45:48","modified_gmt":"2025-06-11T02:45:48","slug":"%e5%a6%82%e4%bd%95%e5%9c%a8php%e4%b8%ad%e5%88%9b%e5%bb%ba%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f%e7%b1%bb","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/607.html","title":{"rendered":"\u5982\u4f55\u5728PHP\u4e2d\u521b\u5efa\u5355\u4f8b\u6a21\u5f0f\u7c7b"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--1\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/dyA-1-400x300.jpg\" alt=\"Bug&#32534;&#35793;&#29422;\" class=\"wp-image-1842\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">Bug&#32534;&#35793;&#29422;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#21333;&#20363;&#27169;&#24335;&#26159;&#19968;&#31181;&#35774;&#35745;&#27169;&#24335;&#65292;&#30830;&#20445;&#19968;&#20010;&#31867;&#21482;&#26377;&#19968;&#20010;&#23454;&#20363;&#65292;&#24182;&#25552;&#20379;&#19968;&#20010;&#20840;&#23616;&#35775;&#38382;&#28857;&#12290;&#36825;&#22312;&#38656;&#35201;&#31649;&#29702;&#36164;&#28304;&#65288;&#22914;&#25968;&#25454;&#24211;&#36830;&#25509;&#12289;&#25991;&#20214;&#21477;&#26564;&#31561;&#65289;&#26102;&#38750;&#24120;&#26377;&#29992;&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#22312;PHP&#20013;&#21019;&#24314;&#21333;&#20363;&#27169;&#24335;&#31867;&#30340;&#31034;&#20363;&#65306;<\/p>\n<h3>&#31034;&#20363;&#20195;&#30721;<\/h3>\n<pre><code class=\"language-php\">class Database {\n    \/\/ &#31169;&#26377;&#38745;&#24577;&#23646;&#24615;&#65292;&#29992;&#20110;&#23384;&#20648;&#21807;&#19968;&#30340;&#23454;&#20363;\n    private static $instance;\n\n    \/\/ &#31169;&#26377;&#26500;&#36896;&#20989;&#25968;&#65292;&#38450;&#27490;&#22806;&#37096;&#23454;&#20363;&#21270;\n    private function __construct() {\n        \/\/ &#21021;&#22987;&#21270;&#25968;&#25454;&#24211;&#36830;&#25509;&#25110;&#20854;&#20182;&#36164;&#28304;\n        \/\/ &#20363;&#22914;&#65306;$this-&gt;connection = new mysqli('localhost', 'username', 'password', 'database');\n    }\n\n    \/\/ &#33719;&#21462;&#21807;&#19968;&#23454;&#20363;&#30340;&#26041;&#27861;\n    public static function getInstance() {\n        if (!self::$instance) {\n            self::$instance = new self();\n        }\n        return self::$instance;\n    }\n\n    \/\/ &#20854;&#20182;&#26041;&#27861;&#21487;&#20197;&#22312;&#36825;&#37324;&#28155;&#21152;\n    public function connect() {\n        \/\/ &#36830;&#25509;&#21040;&#25968;&#25454;&#24211;\n        echo \"Connected to the database.n\";\n    }\n}\n\n\/\/ &#20351;&#29992;&#21333;&#20363;&#27169;&#24335;\n$db1 = Database::getInstance();\n$db2 = Database::getInstance();\n\nif ($db1 === $db2) {\n    echo \"Both instances are the same instance.n\";\n} else {\n    echo \"Instances are different instances.n\";\n}<\/code><\/pre>\n<h3>&#35299;&#37322;<\/h3>\n<ol>\n<li><strong>&#31169;&#26377;&#38745;&#24577;&#23646;&#24615; <code>$instance<\/code><\/strong>&#65306;&#36825;&#20010;&#23646;&#24615;&#29992;&#20110;&#23384;&#20648;&#21807;&#19968;&#30340; <code>Database<\/code> &#23454;&#20363;&#12290;<\/li>\n<li><strong>&#31169;&#26377;&#26500;&#36896;&#20989;&#25968;<\/strong>&#65306;&#36825;&#20010;&#26500;&#36896;&#20989;&#25968;&#26159;&#31169;&#26377;&#30340;&#65292;&#20197;&#38450;&#27490;&#22806;&#37096;&#23454;&#20363;&#21270;&#12290;<\/li>\n<li><strong>&#38745;&#24577;&#26041;&#27861; <code>getInstance()<\/code><\/strong>&#65306;&#36825;&#20010;&#26041;&#27861;&#29992;&#20110;&#33719;&#21462;&#21807;&#19968;&#30340; <code>Database<\/code> &#23454;&#20363;&#12290;&#22914;&#26524; <code>$instance<\/code> &#27809;&#26377;&#34987;&#35774;&#32622;&#65292;&#21017;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;&#23454;&#20363;&#24182;&#36820;&#22238;&#65307;&#21542;&#21017;&#65292;&#30452;&#25509;&#36820;&#22238;&#24050;&#32463;&#23384;&#22312;&#30340;&#23454;&#20363;&#12290;<\/li>\n<li><strong>&#20854;&#20182;&#26041;&#27861;<\/strong>&#65306;&#20320;&#21487;&#20197;&#22312;&#36825;&#20010;&#31867;&#20013;&#28155;&#21152;&#20854;&#20182;&#26041;&#27861;&#26469;&#22788;&#29702;&#25968;&#25454;&#24211;&#25805;&#20316;&#12290;<\/li>\n<\/ol>\n<h3>&#27880;&#24847;&#20107;&#39033;<\/h3>\n<ul>\n<li><strong>&#32447;&#31243;&#23433;&#20840;<\/strong>&#65306;&#21333;&#20363;&#27169;&#24335;&#36890;&#24120;&#19981;&#36866;&#29992;&#20110;&#22810;&#32447;&#31243;&#29615;&#22659;&#65292;&#22240;&#20026;&#27599;&#27425;&#35831;&#27714;&#37117;&#20250;&#21019;&#24314;&#26032;&#30340;&#23454;&#20363;&#12290;&#22914;&#26524;&#20320;&#30340;&#24212;&#29992;&#31243;&#24207;&#38656;&#35201;&#25903;&#25345;&#22810;&#32447;&#31243;&#65292;&#21487;&#33021;&#38656;&#35201;&#20351;&#29992;&#26356;&#22797;&#26434;&#30340;&#21516;&#27493;&#26426;&#21046;&#12290;<\/li>\n<li><strong>&#24615;&#33021;&#24320;&#38144;<\/strong>&#65306;&#30001;&#20110;&#21019;&#24314;&#21644;&#38144;&#27585;&#23454;&#20363;&#20250;&#28040;&#32791;&#19968;&#23450;&#30340;&#36164;&#28304;&#65292;&#22240;&#27492;&#22312;&#29983;&#20135;&#29615;&#22659;&#20013;&#24212;&#35813;&#35880;&#24910;&#20351;&#29992;&#21333;&#20363;&#27169;&#24335;&#12290;<\/li>\n<\/ul>\n<p>&#36890;&#36807;&#36825;&#31181;&#26041;&#24335;&#65292;&#20320;&#21487;&#20197;&#30830;&#20445;&#22312;&#25972;&#20010;&#24212;&#29992;&#31243;&#24207;&#20013;&#21482;&#26377;&#19968;&#20010; <code>Database<\/code> &#23454;&#20363;&#65292;&#24182;&#19988;&#21487;&#20197;&#36890;&#36807;&#20840;&#23616;&#35775;&#38382;&#28857;&#36827;&#34892;&#35775;&#38382;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--2\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/zp-400x300.jpg\" alt=\"&#40657;&#26495;Bug&#35762;&#24072;\" class=\"wp-image-1849\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#40657;&#26495;Bug&#35762;&#24072;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<body><h2>&#27010;&#36848;<\/h2><p>&#22312;&#38754;&#21521;&#23545;&#35937;&#32534;&#31243;&#20013;&#65292;&#21333;&#20363;&#27169;&#24335;&#30830;&#20445;&#31867;&#21482;&#26377;&#19968;&#20010;&#23454;&#20363;&#65292;&#24182;&#25552;&#20379;&#35775;&#38382;&#35813;&#23454;&#20363;&#30340;&#20840;&#23616;&#28857;&#12290;&#22312;PHP&#20013;&#23454;&#29616;&#21333;&#20363;&#28041;&#21450;&#21019;&#24314;&#19968;&#20010;&#38745;&#24577;&#26041;&#27861;&#26469;&#31649;&#29702;&#31867;&#30340;&#23454;&#20363;&#12290;&#26412;&#25945;&#31243;&#23558;&#20174;&#22522;&#30784;&#21040;&#39640;&#32423;&#32423;&#21035;&#36880;&#27493;&#25351;&#23548;&#24744;&#22914;&#20309;&#22312;PHP&#20013;&#21019;&#24314;&#21333;&#20363;&#31867;&#12290;<\/p><h2>&#25484;&#25569;PHP&#20013;&#30340;&#21333;&#20363;&#27169;&#24335;<\/h2><p>&#22312;&#28145;&#20837;&#25506;&#35752;PHP&#20195;&#30721;&#20043;&#21069;&#65292;&#29702;&#35299;&#21333;&#20363;&#27169;&#24335;&#65288;Singleton&#65289;&#21450;&#20854;&#29992;&#36884;&#38750;&#24120;&#37325;&#35201;&#12290;&#21333;&#20363;&#31867;&#25511;&#21046;&#23454;&#20363;&#21270;&#36807;&#31243;&#65292;&#24182;&#30830;&#20445;&#24212;&#29992;&#31243;&#24207;&#20869;&#23384;&#22312;&#19968;&#20010;&#21333;&#19968;&#30340;&#23454;&#20363;&#12290;&#36825;&#31181;&#35774;&#35745;&#36890;&#24120;&#29992;&#20110;&#36164;&#28304;&#31649;&#29702;&#65292;&#20363;&#22914;&#25968;&#25454;&#24211;&#36830;&#25509;&#25110;&#26085;&#24535;&#26426;&#21046;&#65292;&#20854;&#20013;&#22810;&#20010;&#23454;&#20363;&#21487;&#33021;&#20250;&#23548;&#33268;&#19981;&#31283;&#23450;&#30340;&#34892;&#20026;&#12289;&#19981;&#24517;&#35201;&#30340;&#36164;&#28304;&#28040;&#32791;&#25110;&#22797;&#26434;&#30340;&#35843;&#35797;&#38382;&#39064;&#12290;<\/p><h3>&#22522;&#26412;&#30340;&#21333;&#20363;&#31867;&#31034;&#20363;<\/h3><p>&#35753;&#25105;&#20204;&#20174;PHP&#20013;&#26368;&#31616;&#21333;&#30340;&#21333;&#20363;&#31867;&#24320;&#22987;&#65306;<\/p><pre><code>&lt;?php\n    class Database {\n      private static $instance = null;\n      private function __construct() {} \/\/ Prevent direct instantiation\n      private function __clone() {} \/\/ Prevent cloning\n      private function __wakeup() {} \/\/ Prevent unserialization\n      public static function getInstance() {\n          if (!self::$instance) {\n              self::$instance = new Database();\n          }\n          return self::$instance;\n      }\n    }\n?&gt;<\/code><\/pre><p>&#36825;&#20010;&#22522;&#26412;&#30340;&#21333;&#20363;&#31867;&#26088;&#22312;&#30830;&#20445;&#25105;&#20204;&#21482;&#33021;&#26377;&#19968;&#20010;&#25968;&#25454;&#24211;&#23454;&#20363;&#12290;&#26500;&#36896;&#20989;&#25968;&#12289;&#20811;&#38534;&#26041;&#27861;&#21644;&#21796;&#37266;&#26041;&#27861;&#37117;&#26159;&#31169;&#26377;&#30340;&#65292;&#20197;&#38450;&#27490;&#20174;&#22806;&#37096;&#21019;&#24314;&#35813;&#31867;&#30340;&#26032;&#23454;&#20363;&#12290;<\/p><h3>&#35775;&#38382;&#21333;&#20363;&#23454;&#20363;<\/h3><p>&#35201;&#35775;&#38382;&#25968;&#25454;&#24211;&#31867;&#30340;&#23454;&#20363;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; Database &#31867;&#12290;<code>getInstance<\/code>&#35831;&#25353;&#29031;&#20197;&#19979;&#26041;&#27861;&#65306;<\/p><pre><code>&lt;?php\n    $db = Database::getInstance();\n    $anotherDb = Database::getInstance();\n    var_dump($db === $anotherDb); \/\/ bool(true)\n?&gt;<\/code><\/pre><p>&#36825;&#27573;&#20195;&#30721;&#29255;&#27573;&#28436;&#31034;&#20102;&#24403;&#20320;&#23581;&#35797;&#33719;&#21462;&#21478;&#19968;&#20010;&#23454;&#20363;&#30340;&#25968;&#25454;&#24211;&#31867;&#26102;&#65292;&#20250;&#21457;&#29983;&#20160;&#20040;&#24773;&#20917;&#12290;<code>getInstance<\/code>&#26041;&#27861;&#36820;&#22238;&#21516;&#19968;&#20010;&#23454;&#20363;&#65292;&#36825;&#19968;&#28857;&#21487;&#20197;&#20174;&#35777;&#25454;&#20013;&#24471;&#21040;&#35777;&#26126;&#12290;<code>var_dump<\/code>&#21151;&#33021;&#27491;&#22312;&#36820;&#22238;&#20013;&#12290;<code>true<\/code>&#22909;&#30340;&#65292;&#35831;&#21457;&#36865;&#20320;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><h3>&#39640;&#32423;&#21333;&#20363;&#23454;&#29616;&#31034;&#20363;<\/h3><p>&#29616;&#22312;&#65292;&#35753;&#25105;&#20204;&#32771;&#34385;&#19968;&#20010;&#20351;&#29992;PDO&#36827;&#34892;&#25968;&#25454;&#24211;&#36830;&#25509;&#30340;&#26356;&#23454;&#29992;&#30340;&#20363;&#23376;&#65306;<\/p><pre><code>&lt;?php\n    class AdvancedDatabase {\n        private static $instance = null;\n        private $pdoConnection;\n        private function __construct() {\n            \/\/ Establish the database connection\n            $dsn = 'mysql:host=your_host;dbname=your_db';\n            $username = 'your_username';\n            $password = 'your_password';\n            $options = [\n                PDO::ATTR_ERRMODE =&gt; PDO::ERRMODE_EXCEPTION,\n                PDO::ATTR_DEFAULT_FETCH_MODE =&gt; PDO::FETCH_ASSOC,\n                PDO::ATTR_EMULATE_PREPARES =&gt; false,\n            ];\n            $this-&gt;pdoConnection = new PDO($dsn, $username, $password, $options);\n        }\n        \/\/ Getter for the PDO connection\n        public function getConnection() {\n            return $this-&gt;pdoConnection;\n        }\n        \/\/ Static method for Singleton\n        public static function getInstance() {\n            if (!self::$instance) {\n                self::$instance = new AdvancedDatabase();\n            }\n            return self::$instance;\n        }\n        private function __clone() {}\n        private function __wakeup() {}\n    }\n?&gt;<\/code><\/pre><p>&#36825;&#20010;&#31034;&#20363;&#21019;&#24314;&#20102;&#19968;&#20010;&#21333;&#20363;&#65292;&#29992;&#20110;&#31649;&#29702;&#19968;&#20010;PDO&#36830;&#25509;&#12290;&#23427;&#23454;&#29616;&#20102;&#31867;&#20284;&#30340;&#21333;&#20363;&#26041;&#27861;&#65292;&#24182;&#25552;&#20379;&#20102;&#23433;&#20840;&#22788;&#29702;&#25968;&#25454;&#24211;&#36830;&#25509;&#30340;&#26426;&#21046;&#12290;<\/p><h3>&#20351;&#29992;&#21333;&#20363;&#25968;&#25454;&#24211;&#36830;&#25509;<\/h3><p>&#20351;&#29992;&#25105;&#20204;&#30340;<code>AdvancedDatabase<\/code>&#21333;&#20363;&#27169;&#24335;&#29992;&#20110;&#25191;&#34892;&#25968;&#25454;&#24211;&#25805;&#20316;&#26102;&#65292;&#25105;&#20204;&#21487;&#33021;&#20250;&#36825;&#26679;&#20570;&#65306;<\/p><pre><code>&lt;?php\n    $dbInstance = AdvancedDatabase::getInstance();\n    $connection = $dbInstance-&gt;getConnection();\n    \/\/ Now you can use $connection for your database queries\n?&gt;<\/code><\/pre><h3>&#35299;&#20915;Singleton&#27169;&#24335;&#30340;&#32570;&#28857;<\/h3><p>Singleton&#27169;&#24335;&#34429;&#28982;&#26377;&#29992;&#65292;&#20294;&#23427;&#20063;&#21487;&#33021;&#24341;&#20837;&#32039;&#23494;&#32806;&#21512;&#24182;&#38459;&#30861;&#27979;&#35797;&#12290;&#20026;&#20811;&#26381;&#36825;&#20123;&#32570;&#28857;&#65292;&#21487;&#20197;&#32771;&#34385;&#20351;&#29992;&#20381;&#36182;&#27880;&#20837;&#25110;&#26381;&#21153;&#23481;&#22120;&#65292;&#22312;&#24212;&#29992;&#31243;&#24207;&#20869;&#31649;&#29702;&#23545;&#35937;&#29983;&#21629;&#21608;&#26399;&#12290;<\/p><h2>&#32467;&#35770;&#12290;<\/h2><p>&#32508;&#19978;&#25152;&#36848;&#65292;&#26412;&#25351;&#21335;&#35814;&#32454;&#20171;&#32461;&#20102;&#22312;PHP&#20013;&#26500;&#24314;&#21333;&#20363;&#31867;&#30340;&#26041;&#27861;&#65292;&#20174;&#22522;&#26412;&#31034;&#20363;&#21040;&#26356;&#22797;&#26434;&#30340;&#22330;&#26223;&#31649;&#29702;&#25968;&#25454;&#24211;&#36830;&#25509;&#12290;&#21333;&#20363;&#27169;&#24335;&#36866;&#29992;&#20110;&#38656;&#35201;&#20849;&#20139;&#23454;&#20363;&#30340;&#36164;&#28304;&#65292;&#20294;&#24212;&#35880;&#24910;&#20351;&#29992;&#12290;&#38543;&#30528;&#24744;&#24320;&#21457;&#26356;&#22797;&#26434;&#30340;&#24212;&#29992;&#31243;&#24207;&#65292;&#24744;&#20250;&#25214;&#21040;&#20351;&#29992;&#24102;&#26377;&#21333;&#20363;&#27169;&#24335;&#30340;&#31867;&#30340;&#26368;&#20339;&#24179;&#34913;&#21644;&#30446;&#30340;&#12290;<\/p><\/body>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--3\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/xygcfznnzczhsdmwydzhsmzzzmddnq-400x300.jpg\" alt=\"&#38271;&#24037;&#30721;&#22900;1523\" class=\"wp-image-2906\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#38271;&#24037;&#30721;&#22900;1523<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312;PHP&#20013;&#21019;&#24314;&#21333;&#20363;&#27169;&#24335;&#65288;Singleton&#65289;&#31867;&#65292;&#36890;&#24120;&#38656;&#35201;&#30830;&#20445;&#21482;&#26377;&#19968;&#20010;&#23454;&#20363;&#34987;&#21019;&#24314;&#65292;&#24182;&#19988;&#36825;&#20010;&#23454;&#20363;&#22312;&#25972;&#20010;&#31243;&#24207;&#30340;&#29983;&#21629;&#21608;&#26399;&#20869;&#20445;&#25345;&#19981;&#21464;&#12290;<\/p>\n<p>&#20197;&#19979;&#26159;&#22914;&#20309;&#20351;&#29992;PHP&#26469;&#23454;&#29616;&#36825;&#19968;&#30446;&#26631;&#30340;&#19968;&#20010;&#31616;&#21333;&#31034;&#20363;&#65306;<\/p>\n<pre><code class=\"language-php\">class Singleton {\n    private static $instance = null;\n\n    public function __construct() {\n        if (self::$instance === null) {\n            self::$instance = new self();\n        }\n    }\n\n    public static function getInstance() {\n        return self::$instance;\n    }\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65306;<\/p>\n<ul>\n<li><code>Singleton<\/code> &#31867;&#23450;&#20041;&#20102;&#19968;&#20010;&#31169;&#26377;&#23646;&#24615; <code>$instance<\/code> &#29992;&#20110;&#23384;&#20648;&#24403;&#21069;&#21807;&#19968;&#30340;&#23454;&#20363;&#12290;<\/li>\n<li>&#20351;&#29992; <code>__construct()<\/code> &#26041;&#27861;&#21021;&#22987;&#21270;&#19968;&#20010;&#26032;&#23545;&#35937;&#24182;&#26816;&#26597;&#26159;&#21542;&#23384;&#22312;&#24050;&#23384;&#22312;&#30340;&#23454;&#20363;&#12290;&#22914;&#26524;&#19981;&#23384;&#22312;&#65292;&#21017;&#36820;&#22238;&#19968;&#20010;&#26032;&#30340;&#23454;&#20363;&#65307;&#21542;&#21017;&#65292;&#36820;&#22238;&#24050;&#26377;&#30340;&#23454;&#20363;&#12290;<\/li>\n<li><code>getInstance()<\/code> &#26041;&#27861;&#25552;&#20379;&#20102;&#19968;&#20010;&#20844;&#20849;&#26041;&#27861;&#26469;&#33719;&#21462;&#24403;&#21069;&#21807;&#19968;&#23454;&#20363;&#65292;&#23427;&#20250;&#36820;&#22238;&#23454;&#20363;&#21270;&#30340;&#26032;&#23545;&#35937;&#65292;&#32780;&#19981;&#26159;&#26087;&#30340;&#23454;&#20363;&#12290;<\/li>\n<\/ul>\n<p>&#35201;&#27979;&#35797;&#27492;&#21333;&#20363;&#27169;&#24335;&#65292;&#35831;&#23558;&#19978;&#36848;&#20195;&#30721;&#20445;&#23384;&#20026;&#19968;&#20010;&#25991;&#20214;&#65288;&#20363;&#22914; <code>singleton.php<\/code>&#65289;&#65292;&#28982;&#21518;&#36890;&#36807;&#20197;&#19979;&#26041;&#24335;&#35843;&#29992;&#23427;&#65306;<\/p>\n<pre><code class=\"language-bash\">&lt;?php\n\/\/ &#21019;&#24314;&#21333;&#20363;\n$myInstance = Singleton::getInstance();\n\n\/\/ &#26816;&#26597;&#26159;&#21542;&#26159;&#21516;&#19968;&#20010;&#23454;&#20363;\necho is_object($myInstance); \/\/ &#36755;&#20986;: true\n\n\/\/ &#33719;&#21462;&#21478;&#19968;&#20010;&#23454;&#20363;\n$anotherInstance = Singleton::getInstance();\n\n\/\/ &#26816;&#26597;&#26159;&#21542;&#26159;&#21516;&#19968;&#20010;&#23454;&#20363;\necho is_object($anotherInstance); \/\/ &#36755;&#20986;: false<\/code><\/pre>\n<p>&#36755;&#20986;&#32467;&#26524;&#22914;&#19979;&#65306;<\/p>\n<ol>\n<li>&#24403;&#21069;&#36816;&#34892;&#30340;&#26159;&#21333;&#20010;&#23454;&#20363;&#65288;<code>true<\/code>&#65289;<\/li>\n<li>&#36824;&#21487;&#20197;&#24471;&#21040;&#26032;&#30340;&#23454;&#20363;&#65288;<code>false<\/code>&#65289;<\/li>\n<\/ol>\n<p>&#36825;&#26679;&#65292;&#26080;&#35770;&#20309;&#26102;&#25191;&#34892;&#36825;&#20123;&#25805;&#20316;&#65292;&#37117;&#20250;&#24471;&#21040;&#21516;&#19968;&#23454;&#20363;&#12290;&#36825;&#23601;&#26159;PHP&#20013;&#30340;&#21333;&#20363;&#27169;&#24335;&#30340;&#22522;&#26412;&#24037;&#20316;&#21407;&#29702;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; &#21333;&#20363;&#27169;&#24335;&#26159;&#19968;&#31181;&#35774;&#35745;&#27169;&#24335;&#65292;&#30830;&#20445;&#19968;&#20010;&#038;#31..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[41],"tuisongtax":[],"class_list":["post-607","my1js","type-my1js","status-publish","hentry","my1js2nav-sjjg"],"acf":{"qian_art_seotitle":"","qian_art_seotitle_source":{"label":"SEO\u6807\u9898","type":"text","formatted_value":""},"qian_art_seokws":"","qian_art_seokws_source":{"label":"SEO\u5173\u952e\u8bcd","type":"text","formatted_value":""},"qian_art_stzhong":"","qian_art_stzhong_source":{"label":"\u4e2d | \u77ed\u6807\u9898","type":"text","formatted_value":""}},"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js\/607","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/types\/my1js"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/users\/1"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/media?parent=607"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=607"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=607"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=607"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}