<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                什么是單例模式呢?首先要理解PHP中面向對象的內存知識! 如下代碼,創建一個類A,然后實例化兩個對象a和b,那么在內存中就會有a、b兩個對象,這兩個對象之間除了公共類A的方法和屬性,其他方面沒有任何的關系,所以最后輸出的uname的值都是不一樣的! class A{ public $uname; } $a = new A(); $a->uname = 100; echo $a->uname.'<br/>';//100 $b = new A(); $b->uname = 200; echo $b->uname;//200 利用static關鍵詞,創建一個靜態的方法,然后通過類本身去創建對象,那么最后不管定義多少個變量,這幾個變量所指向的對象都是同一個對象,也就是同一個內容地址,這樣可以節省內存空間。 如下代碼:因為使用了static關鍵詞定義了屬性obj,所以它只會初始化一次,getObj方法里邊的if判斷語句也只會執行一次,最后return出的對象都是同一個對象! class A{ public $uname; static $obj = null; public function __construct(){ echo '100'.'<br/>'; } public function show(){ echo $this->uname; } static function getObj(){ if(is_null(self::$obj)){ self::$obj = new A(); } return self::$obj; } } $a = A::getObj(); $a->uname = 200; echo $a->uname.'<br/>';//200 $b = A::getObj(); echo $b->uname.'<br/>';//200 $b->uname = 300; echo $b->uname.'<br/>';//300 echo $a->uname.'<br/>';//300 需要注意的是:如果對象是通過new關鍵字創建的,那么類里邊的默認函數__construct就必須得是public狀態,否則創建對象的同時執行馬上會執行這個構造函數,但是定義成private私有的,那就不允許訪問,導致出錯! class A{ private function __construct(){ echo 123; } } $a = new A();//報錯
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看