[英]Reading Json returned by MongoDB in PHP
我有一個任務要從json文件中找出ER,這是一條記錄
{ "__v" : 0, "_id" : ObjectId( "52210bf6880b9f0200000003" ), "email" : "", "emailFrequency" : "instant", "feedbackRating" : 0, "field_aboutMe" : "On Fridays I like to eat apples.", "field_contact" : "me@matt.is", "field_intro" : "Sparkboard bug-fixer. Co-founded Hacking Health, Bodo Wellness, and BrainTripping.", "first_time" : false, "hash" : "", "name" : "Matt Huebert", "picture" : "https://www.ssss.com", "ready" : true, "roles" : [ "admin" ], "email" : "", "tags" : [ "Developer", "Designer", "Mentor" ], "updatedAt" : Date( 1384115378947 ), "votesByDomain" : { "sadsard-com" : "525eadf50f13910200000004" } }
搜索后,我發現它與MongoDB有關。 我需要解析此數據以找出其中的實體。 當我檢查其驗證時,它不是有效的json,因為它是由mongo db生成的。 請任何人有任何想法?
我也嘗試過
$data = file_get_contents('json/users.json');
bson_decode($data);
嘗試json_decode以及它也無法正常工作並返回NULL
我在嘗試bson_decode時收到此錯誤
致命錯誤:不支持消息類型為0x5f的未捕獲異常'MongoException'
不知道是什么東西可能是從mongo shell的stdout將其轉儲到了json文件中的,但這是問題所在:
ObjectId( "52210bf6880b9f0200000003" )
您需要刪除Wrapping“ ObjectId(”和右括號“)”,以使每行均有效JSON。 過濾后,您將獲得有效的JSON。
如果您知道誰在向您提供這些文件,並且無法直接使用mongodb數據源,請要求他們使用mongoexport ,這至少將從一開始就為您提供有效的JSON。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.