Windowsで始めるCakePHP4

CakePHP4のメモ

176 views

__debuginfo

__debuginfoは、PHPで定義できるマジックメソッドの1つで、オブジェクトが var_dump() で出力されたときに表示される情報を定義するために使用されます。

var_dump() は、渡された変数の詳細な情報を表示するデバッグ関数ですが、オブジェクトを出力する場合、デフォルトではオブジェクトのプロパティとメソッドのリストが表示されます。
しかし、__debuginfo メソッドが定義されている場合、var_dump() はこのメソッドが返す配列を使用してオブジェクトの出力を制御します。

つまり、__debuginfo メソッドを定義することで、オブジェクトの出力情報をカスタマイズできます。
たとえば、オブジェクトの特定のプロパティだけを出力する、特定のフォーマットで出力する、またはデバッグ情報以外の情報を含めることができます。

以下は、__debuginfo メソッドの例です。

class MyClass
{
    public $prop1 = 'foo';
    public $prop2 = 'bar';

    public function __debuginfo()
    {
        return [
            'prop1' => strtoupper($this->prop1),
            'prop2' => strtoupper($this->prop2),
            'time' => date('Y-m-d H:i:s'),
        ];
    }
}

$obj = new MyClass();
var_dump($obj);

上記の例では、__debuginfo() メソッドが定義されており、var_dump() を使用してobj オブジェクトを出力しています。
__debuginfo() メソッドは、オブジェクトのプロパティprop1 とprop2 を大文字に変換し、現在の時刻を配列に格納して返します。
そして、var_dump() はこの配列を使用してオブジェクトの出力を制御します。

Page 9 of 17.

前のページ 次のページ



[添付ファイル]

1.php_xdebug-3.0.4-8.0-vs16-x86_64.dll  


お問い合わせ

プロフィール

マッスル

自己紹介

本サイトの作成者。
趣味:プログラム/水耕栽培/仮想通貨/激辛好き
プログラムは趣味と勉強を兼ねて、のんびり本サイトを作っています。
フレームワークはdjango。
仮想通貨はNEMが好き。
水耕栽培は激辛好きが高じて、キャロライナ・リーパーの栽培にチャレンジ中。

サイト/ブログ

https://www.osumoi-stdio.com/pyarticle/

ツイッター

@darkimpact0626