私が使用するライブラリは配列を使用します。その配列に print_r を適用すると、次のように出力されます。
Array
(
[*queueId] => 1
[*handle] => 9b875867b36d568483fb35fdb8b0bbf6
[*body] => First string in the TestQueue
[*md5] => c23ba714199666efbc1dcd5659bb0a0a
[*timeout] => 1408003330.6534
[*id] => 2
[*creationdate] => 2014-08-13 16:03:37
)
ライブラリはその配列で魔法のゲッターを使用します
public function __get($key)
{
if (!array_key_exists($key, $this->_data)) {
throw new Exception\InvalidArgumentException("Specified field \"$key\" is not in the message");
}
return $this->_data[$key];
}
アクセスしようとすると
$myObject->body
私は例外に遭遇します。実際、上記のように _data 配列が使用可能である間、array_key_exists が false を返すことをデバッガーが示しています。