curl url php post方法奇怪的json结果

时间:2015-04-22 20:42:57

标签: php json curl

我正在尝试将关键字发布到网址,然后返回json结果。这是我的php代码:

$url = 'http://www.hiddendomain.com/tld';
$fields = array( 'keyword' => urlencode('referralcode') );

foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string, '&');

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);

$result = curl_exec($ch);
$test = json_decode($result);

//close connection
curl_close($ch);

我所知道的预期结果应该是返回json编码数据。但是当我尝试解码时,我得到的值是1,而不是实际的数据。

这是我回来的实际回复

 [{"domain":"referralcode.com","status":"taken","tld":"com","url":"http:\/\/referralcode.com"},{"domain":"referralcode.co.uk","status":"taken","tld":"co.uk","url":"http:\/\/referralcode.co.uk"},{"domain":"referralcode.net","status":"taken","tld":"net","url":"http:\/\/referralcode.net"},{"domain":"referralcode.eu","status":"available","tld":"eu","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.eu"},{"domain":"referralcode.org","status":"available","tld":"org","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.org"},{"domain":"referralcode.me","status":"available","tld":"me","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.me"},{"domain":"referralcode.us","status":"available","tld":"us","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.us"},{"domain":"referralcode.co","status":"taken","tld":"co","url":"http:\/\/referralcode.co"},{"domain":"referralcode.ca","status":"available","tld":"ca","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.ca"},{"domain":"referralcode.info","status":"available","tld":"info","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.info"},{"domain":"referralcode.de","status":"available","tld":"de","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.de"},{"domain":"referralcode.tv","status":"available","tld":"tv","url":"https:\/\/www.uniteddomains.com\/domain\/namecheck?et_cid=2\u0026et_lid=2\u0026domain=referralcode.tv"}]

我是否遗漏了json解码的正常过程或者这只是一个奇怪的结果?

1 个答案:

答案 0 :(得分:2)

环境:

 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

诀窍。对不起。