• <rp id="gzxyh"><listing id="gzxyh"></listing></rp>
    <kbd id="gzxyh"></kbd>

    <b id="gzxyh"><legend id="gzxyh"><b id="gzxyh"></b></legend></b>
    <source id="gzxyh"></source>
    <u id="gzxyh"></u>
    1. PHP8 stdClass 類

      2023-08-21 15:43 更新

      (PHP 4, PHP 5, PHP 7, PHP 8)

      簡介

      具有動態屬性的通用空類。

      此類的對象可以使用 new 運算符實例化,也可以通過類型轉換為對象創建。幾個 PHP 函數也會創建此類的實例,比如 json_decode()、mysqli_fetch_object() 或 PDOStatement::fetchObject()。

      盡管沒有實現 __get()/__set() 魔術方法,但此類允許動態屬性且不需要 #[\AllowDynamicProperties] 屬性。

      這不是 PHP 的基類,因為 PHP 沒有通用基類的概念。然而,可以創建繼承 stdClass 的自定義類,從而繼承動態屬性的功能。

      類摘要

      class stdClass {
      }

      此類沒有方法和默認屬性。

      示例

      示例 #1 通過類型轉換為對象創建

      <?php
      $obj = (object) array('foo' => 'bar');
      var_dump($obj);

      以上示例會輸出:

      object(stdClass)#1 (1) {
        ["foo"]=>
        string(3) "bar"
      }
      

      示例 #2 通過 json_decode() 創建

      <?php
      $json = '{"foo":"bar"}';
      var_dump(json_decode($json));

      以上示例會輸出:

      object(stdClass)#1 (1) {
        ["foo"]=>
        string(3) "bar"
      }
      

      示例 #3 聲明動態屬性

      <?php
      $obj = new stdClass();
      $obj->foo = 42;
      $obj->{1} = 42;
      var_dump($obj);

      以上示例會輸出:

      object(stdClass)#1 (2) {
        ["foo"]=>
        int(42)
        ["1"]=>
        int(42)
      }


      以上內容是否對您有幫助:
      在線筆記
      App下載
      App下載

      掃描二維碼

      下載編程獅App

      公眾號
      微信公眾號

      編程獅公眾號