【PHP】正体不明のクラス「stdClass」とは?

stdClass

stdClass

PHP 勉強していてサンプルコードで stdClass を使う事があったのでどういったクラスなのか調べてみた。

調査結果

中身の無い名前だけのクラスだった。
つまりプロパティやメソッドは一切定義されてない状態で存在している。
どういった意図でPHP上で定義されているかは不明だが、エラー対処でPHPが自動で割り当てる場合があるようでエラーメッセージにたまに出てくる事もある。

使い方

名前だけのクラスなので、使い方は書き手次第。スコープを考えて一時的にクラスを定義したい時に便利に使えそう。

書き方とサンプルコード

<?php

    $cStd = new stdClass();
    //インスタンスを作成する、この時点では中身は何も無いので何もできない
    
    $cStd->str_a = "テスト";
    //上記の様に記述する事で変数を設定する事ができる
    
    echo $cStd->str_a;
    //出力結果: テスト
?>
タイトルとURLをコピーしました