
$aに連想配列が入っているとして、
print "<pre>";print_r($a);print "</pre>";
↓
array
(
[Return] => array
(
[data] => あいうえお
)
)
このように連想配列の入った変数から
データを個別に取るとき
このように、配列名を並べると
print $a['Return']['data'];
↓
あいうえお
と、個別に取り出せますが、
あるデータをprint_rすると、
stdClass Object
(
[Return] => stdClass Object
(
[data] => あいうえお
)
)
というふうに"stdClass Object"として出力されてしまいました。
stdClass Objectのデータを個別に取り出したいのですが
連想配列のような記述だとうまく取り出せません。
stdClass Objectのデータはどのようにして個別に取り出すのでしょうか?
No.3
- 回答日時:
直接stdClassを触らずに、アクセッサー付きのwrapperを作ったほうが手っ取り早いと思います
class dataClass extends stdClass {
public function set(){
//ご自由に
}
public function get(){
return $data;//お好みで
}
public function getArray(){
return array();//お好きなように
}
}
みたいな感じ
No.2
- 回答日時:
それはstdClassの設計如何によるでしょう。
stdClass内のReturnと言うメンバがstdClassのインスタンスで、dataというメンバを内包しているのであれば
$obj = new stdClass();
$arr = $obj->Return->data;
foreach($arr as $key => $value){ ... }
となります。$obj->Returnがコンストラクタなどで初期化されていればの話ですが。
配列とオブジェクトは全く別物として捉えましょう。
// というか自身のインスタンスを内部に保持するのはどうなんだろうと思いますけども。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpのheader("Location:#pos")...
-
セッション関数を使わずにファ...
-
SplFileObject を利用したとき...
-
PHP8でWarning:Undefined varia...
-
PHP8を使うと、大量のWarningが...
-
フォームで戻った際に入力済み...
-
PHPで画像の渡しが上手く行きま...
-
$filePath = './user_img/' . $...
-
php ラジオボタン
-
composerをインストールしたい...
-
phpの問い合わせフォームを作っ...
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHP 別ドメインへのファイル保存法
-
Resource id #3 と表示されま...
-
別ファイルの構造体の値を読み...
-
C言語でCSVファイルの行数を読...
-
自動で番号を振りたい
-
ヒアドキュメントの中のfor文
-
csvの内容を行単位で削除したい
-
ログファイルが一定行数を超え...
-
【PHP】csvファイルへの書き出...
-
配列同士の足し算のループ処理
-
掲示板のコメント削除
-
バイナリファイルの内容を、そ...
-
FortranのOPEN文
-
pythonのファイルの並びでの読...
-
配列をファイルに書き込む方法
-
文字列(丸数字)の文字化けに...
-
CSVファイルの最終行のデー...
-
複数行のデータのPOST処理に関して
-
doxygenを使用する環境について
-
PHPでCSVの一部の行を編集したい
おすすめ情報