2013-11-14 61 views
0

使用下面的代碼轉換爲文檔JSON是:蒙戈JSON作爲結果

print(json_encode((new MongoClient())->db->col->findOne())); 
//Output:{"_id":{"$id":"52838520f7c255c009000000"},"test":"test"} 

有什麼辦法來設置蒙戈以_id現場返回的字符串,而不是對象?將_id值返回給客戶端腳本是安全的(作爲GET請求的響應)

我不想在實現REST API時手動將_id轉換爲字符串,反之亦然。

回答

1

不,沒有什麼可以做的(與SQL相比,mongod無法對輸出字段進行修改)。所以你唯一的辦法就是做你想做的不想做的事(手動轉換)。但也不是很難,你需要做的就是其中之一:

  • (string)$doc['_id'];
  • (string)$doc->_id;
  • $doc['_id']->{'$id'};