Php 出于某种原因,curl json对象为空

Php 出于某种原因,curl json对象为空,php,json,curl,netbeans,wampserver,Php,Json,Curl,Netbeans,Wampserver,我使用netbeans 8.0.2和wampserver 3.0.0运行php。到目前为止一切顺利 当尝试向bungie的API发出返回JSON对象的curl请求时,收到的对象为null。 问题是,我试着在中运行相同的代码,但它确实有效,所以现在我不知道问题出在哪里 PHP代码: $apiKey = 'xxxxxxxxxxxxxxxxxxxxx'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://www.

我使用netbeans 8.0.2和wampserver 3.0.0运行php。到目前为止一切顺利

当尝试向bungie的API发出返回JSON对象的curl请求时,收到的对象为null。 问题是,我试着在中运行相同的代码,但它确实有效,所以现在我不知道问题出在哪里

PHP代码:

    $apiKey = 'xxxxxxxxxxxxxxxxxxxxx';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://www.bungie.net/platform/destiny/{myplatform}/Stats/GetMembershipIdByDisplayName/{mygamertag}/');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-API-Key: ' . $apiKey));
    $json = json_decode(curl_exec($ch));
    echo $json->Response;
旋度是启用的,php工作正常,所以我现在不知道是什么问题,因为我不知道


我得到的错误是echo命令中的“试图获取非对象的属性”。

您可以使用
var\u dump

var_dump(json_decode($json));
打印
,例如(从文档):


或类似于打印的回显…

您可以使用
var\u dump

var_dump(json_decode($json));
打印
,例如(从文档):


或类似于打印的echo…

请显示
curl\u exec($ch)
的输出(即在您尝试将其解码为JSON之前)。可能有一些错误正在潜入其中并阻止JSON库对其进行解析。curl_exec($ch)为null。无论如何,我不认为这是一个编码错误,因为它在这里工作。您是否使用
var\u dump()
来测试
curl\u exec
的返回值?它不应该返回NULL,它应该返回结果或FALSE,因此NULL表示发生了一些奇怪的事情。是的,我的错,这是我使用var_dump(curl_exec($ch))时发生的情况:D:\Programs\wamp64\www\pls\index.php:20:boolean FALSE。至少我们知道问题在哪里——cURL由于某种原因在连接上遇到了问题。试着在你的代码之后打印出来自
curl\u error($ch)
的返回值-这应该会让你对出错的地方有一个可读的描述。请显示
curl\u exec($ch)
(即在你尝试将其解码为JSON之前)的输出。可能有一些错误正在潜入其中并阻止JSON库对其进行解析。curl_exec($ch)为null。无论如何,我不认为这是一个编码错误,因为它在这里工作。您是否使用
var\u dump()
来测试
curl\u exec
的返回值?它不应该返回NULL,它应该返回结果或FALSE,因此NULL表示发生了一些奇怪的事情。是的,我的错,这是我使用var_dump(curl_exec($ch))时发生的情况:D:\Programs\wamp64\www\pls\index.php:20:boolean FALSE。至少我们知道问题在哪里——cURL由于某种原因在连接上遇到了问题。试着在你的代码之后打印出从
curl\u error($ch)
返回的结果-这应该会给你一个可读的错误描述。这就是我使用var\u dump(json\u decode(curl\u exec($ch))时发生的情况:D:\Programs\wamp64\www\pls\index.php:21:null。如果我使用print,我会得到与echo相同的错误。当你打印或echo时,你应该在解码之前使用变量neme,就像我的示例中的
echo curl\u exec($ch)
,然后你会看到直接输出,可能你有一个错误……这就是我使用var\u dump(json\u decode(curl\u exec($ch))时发生的情况:D:\Programs\wamp64\www\pls\index.php:21:null。如果我使用print,我会得到与echo相同的错误。当你打印或echo时,你应该在解码之前使用变量neme,就像我的示例中的
echo curl\u exec($ch)
,然后你会看到直接输出,可能你有一个错误。。。