尝试检查GET请求发送的数组的输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尝试检查GET请求发送的数组的输出相关的知识,希望对你有一定的参考价值。
private $api_url= "www.myurl.com";
private $api_key = "111abjkbjkvsdf3879";
private function getpage($url, $redirect=FALSE) {
$url = $this->purge_url($url);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
**/*Output the value of the array NULL NULL*/**
$p_result = curl_exec($ch);
$array = json_decode(trim($p_result), TRUE);
var_dump($array);
if ($redirect) curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
if (!$page=curl_exec($ch)) {
$this->add_error("Remote GET connection to $url failed: ".curl_error($ch));
curl_close($ch);
return false;
}
curl_close($ch);
$this->xmlsource = $page;
return $page;
}
在var_dump($ array)中输出数组的值是:NULL NULL在我的情况下,NULL是值,还是我在检测值时犯了错误?我尝试发送APIkey请求。
答案
如果你从var_export
得到的实际上是一个有两个值null
的数组,那么这对应于JSON [null, null]
的成功解码。
看这个例子:
<?php
$encoded = "[null, null]";
$decoded = json_decode( $encoded, true );
var_export( $decoded );
输出:
array (
0 => NULL,
1 => NULL,
)
如果这不是您所期望的,那么您需要对GET请求应用更正。
您可以通过检查传递给curl的$url
来检查它
如果你想在解码之前检查响应实际是什么,请使用var_export( $p_result );
以上是关于尝试检查GET请求发送的数组的输出的主要内容,如果未能解决你的问题,请参考以下文章
AFNetworking 在 GET 请求的 JSON 参数中发送数组
emberJS JSONAPI 适配器发送 OPTION 而不是 GET 请求 [重复]