0

Zendフレームワークでjson応答を取得するためにコンテキスト切り替えを使用しています

これは、コントローラーのinit関数で使用しているコードです

$this->_helper->contextSwitch()
                ->addActionContext('index', array('xml', 'json'))
                  ->setAutoJsonSerialization(true)
                    ->initContext();

他の方法では、json応答として必要なデータのdoctrine_collectionがあります。

コードは

$pm = new ProfileMessage();
$flirts = $pm->fetchLastMessages($this->_member->user_id, "0,1", 
                                            Labels_MessageType::FLIRT, 5, 0);

$this->view->flirts = $flirts;

しかし、応答のために、空のjson文字列を取得しています。

{"flirts":{}}

私が間違っていること。前もって感謝します

4

1 に答える 1

0

$flirts が配列またはシリアライズ可能なオブジェクトであることを確認する必要があります。

php > $user = new Model_User();
php > $user->setId(10);
php > echo json_encode($user);
{} //output is empty

/* Convert the object to array */
php > echo json_encode($user->toArray());
{"_id":10} //output not empty

/* Trying a simple object */
php > $simple = new stdClass();
php > $simple->something = 'else';
php > echo json_encode($simple);
{"something":"else"} //output not empty
于 2012-06-22T21:42:49.013 に答える