GAg*_*new 3 php json couchdb decode
我正在使用couchDB来获取UUID,以便我可以将新文档发送到数据库.
为了获得这个UUID,我使用了一个curl语句:
function getUUID(){
$myCurlSubmit = curl_init();
curl_setopt($myCurlSubmit, CURLOPT_URL, 'http://localhost:5984/_uuids');
curl_setopt($myCurlSubmit, CURLOPT_HEADER, 0);
$response = curl_exec($myCurlSubmit);
curl_close($myCurlSubmit);
return $response;
}
Run Code Online (Sandbox Code Playgroud)
这将返回预期结果:
{"uuids":["af09ffd3cf4b35c2d94d1ed755000fb8"]}
Run Code Online (Sandbox Code Playgroud)
但是,以下json_decode失败:
print_r('No match, creating new document.');
$uuid = json_decode(trim(getUUID()));
var_dump(json_last_error());
Run Code Online (Sandbox Code Playgroud)
打印的错误是:'int(0)'(不在引号中),$ uuid仍然是一个json字符串.
帮助赞赏谢谢!
编辑:
var_dump($uuid) = int(1)
Run Code Online (Sandbox Code Playgroud)
编辑:var_dump(getUUID())= {"uuids":["af09ffd3cf4b35c2d94d1ed755000fb8"]} \n1
有什么理由为什么我会在我的json上有一个尾随的和/ n?
编辑:
问题是卷曲,看看下面的答案!
问题在于在getUUID()函数中使用curl .
您必须设置CURLOPT_RETURNTRANSFER,否则curl_exec只返回结果,同时返回1(如您所见).
请参阅curl_exec手册中的此评论:http://www.php.net/manual/de/function.curl-exec.php#13020
| 归档时间: |
|
| 查看次数: |
1959 次 |
| 最近记录: |