Rakuten

  • 楽天ダウンロード

    楽天市場

おすすめ本

天気予報

最近のトラックバック

  • event (夢茶爺&苦茶爺のPC奮戦備忘録)

カウンタ

VC

admax

« 【PHP】関数の戻り値を複数にする方法(list関数) | メイン | Oracleファンクションのソースを表示する方法について・覚え書き »

2018年4月19日 (木)

【PHP】連想配列の様な「stdClass」の使い方について

最近他の人が作ったプログラムの改修作業が在ったのですが、その中で stdClass を使っていて 私は使ったことが無かったので少し調べてみたところ、連想配列の様な使い方ができることを知りました。

クラスを使う場合、普通は別のクラス宣言でクラス名を付けますが stdClass は無名クラスとして クラスオブジェクトを生成する様です。

以下のソースは stdClass を生成し2個のプロパティへの代入を行う簡単な例です。
stdClass で生成されたオブジェクトに対して、プロパティを指定する時点で、 内部的にそのプロパティが生成されるようです。

結果は以下の表示になります。

2個のプロパティに値が設定されていることが確認できます。
尚、このソースに stdVal3 というプロパティを参照する様にしてみます。

この結果は以下の様に、Notice エラーが発生します。
代入設定されていないプロパティを参照することはできない様です。


この stdClass ですが配列に変換することができます。 以下のソースでは stdClass オブジェクトを array オブジェクトに代入し変換しています。

上のソースから stdClass は連想配列的であることが分かります。
尚、 stdVal1 とソース上固定の記述のみしか扱えないわけでは無く、 次の例では stdVal1 の参照を変数を用いて行う方法を示します。

オブジェクトのプロパティを変数で扱えると応用がいろいろ利くと思います。
楽天市場
デル株式会社

トラックバック

このページのトラックバックURL:
http://app.mitelog.jp/t/trackback/459161/34122582

【PHP】連想配列の様な「stdClass」の使い方についてを参照しているブログ:

コメント

コメントを投稿