我有一个脚本,试图用从服务器收到的xml响应更新MongoDB集合。我正在对响应执行simplexml_load_string()。但是,在更新字段时,它会在我试图添加的值中添加一个额外的"0"键。这是代码:
$xml = simplexml_load_string($response);
if($xml->type == "reject") {
$status = $xml->type;
$message = $xml->message;
}
$update = array('$set' => array('status' => $status, 'response' => $message));
这就是我所期待的:
{ "_id" : ObjectID("..."), "status" : "reject", "response" : "The message." }
然而,以下是保存在MongoDB中的条目:
{ "_id" : ObjectID("..."), "status" : { "0" : "reject" }, "response" : { "0" : "The message." } }
你知道发生了什么,或者对如何解决它有什么建议吗?谢谢
$xml->type
和$xml->message
可能是对象,而不是字符串。您可能想要var_dump
来查看它的实际内容,然后将其转换为字符串。