PHP使用new StdClass()建立Null 物件的方法分析

來源:互聯網
上載者:User
這篇文章主要介紹了PHP使用new StdClass()建立Null 物件的方法,結合具體執行個體形式分析了phpNull 物件的建立與使用方法,需要的朋友可以參考下

本文執行個體講述了PHP使用new StdClass()建立Null 物件的方法。分享給大家供大家參考,具體如下:

PHP可以用 $object = new StdClass(); 建立一個沒有成員方法和屬性的Null 物件。

很多時候,程式員們會將一些參數配置項之類的資訊放在數組中使用,但是數組操作起來並不是很方便,很多時候使用對象操作符->xxx比數組操作符['xxx']要方便不少。於是就需要建立一個空的對象,來將需要的屬性名稱和屬性值儲存到對象中。

然而PHP中沒有Javascript裡面 var object = {}; 這樣的文法。

PHP建立Null 物件至少可以使用3種方法實現

方法一:寫一個空類

勉強能完成任務,但是特別沒有格局。

<?php  class cfg {  }  $cfg = new cfg;  $cfg->dbhost = 'www.jb51.net';  echo $cfg->dbhost;?>

方法二:執行個體化 StdClass 類

StdClass類是PHP中的一個基類,然而比較詭異的是PHP手冊裡面血幾乎沒有提到過這個類,至少在PHP索引中是搜尋不到這個類的。

StdClass類沒有任何成員方法,也沒有任何成員屬性,執行個體化以後就是一個Null 物件。

<?php  $cfg = new StdClass();  $cfg->dbhost = 'www.jb51.net';  echo $cfg->dbhost;?>

方法三:折騰json_encode()和json_decode()

這種方法就是把一個空的JSON對象通過json_decode()轉變為PHP的StdClassNull 物件。

同樣的道理,你可以將一個數組通過json_encode()轉成JSON,再通過json_decode()將JSON轉為StdClass對象,

關於這兩個函數,可以參考PHP手冊。

<?php  $cfg = json_decode('{}');  $cfg->dbhost = 'www.jb51.net';  echo $cfg->dbhost;?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.