
$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ランキング
-
複数行のデータのPOST処理に関して
-
エラーメッセージ(無効な間接...
-
配列同士の足し算のループ処理
-
ログファイルが一定行数を超え...
-
phpの関数について質問です!
-
CSVデータを正規表現で抜き出せ...
-
プルダウンメニューにDBの内容...
-
String だと「 ByRef引数の型が...
-
C言語の配列をPush(追加)する...
-
配列を回すとき、最後の要素だ...
-
System.String.Splitでエラー
-
チェックボックスが複数選択で...
-
マッチング処理(1:N)
-
$_SESSIONに二次元配列を使える...
-
STLのvectorで作った配列をメン...
-
multiple属性のPOSTを配列で受...
-
タブ区切りのデータでnullのデ...
-
漢字のソートについて
-
forとかで連番の変数を一気に格...
-
ftokが動かない?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ヒアドキュメントの中のfor文
-
C言語でCSVファイルの行数を読...
-
Resource id #3 と表示されま...
-
複数行のデータのPOST処理に関して
-
CSVデータを使ったページングと...
-
別ファイルの構造体の値を読み...
-
自動で番号を振りたい
-
配列を利用して表示されるテー...
-
データベースに削除機能を追加...
-
CSVデータの行数カウントをした...
-
AならBを読み込む場合
-
C言語の配列とポインタについて
-
PHP ファイル読み取りについて。
-
phpの掲示板で新しい順に表...
-
php4で同じ要素の数を数えてフ...
-
CSV読込(fgetcsv関数)で「手...
-
PHPからCSVをアップロード後、m...
-
すみません・・誤字脱字が多い...
-
エラーメッセージ(無効な間接...
-
CSVファイルの最終行のデー...
おすすめ情報