尝试检查 GET 请求发送的数组的输出

Try check the output of the array sent by GET request

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].[=17 的成功解码=]

看这个例子:

<?php
$encoded = "[null, null]";

$decoded = json_decode( $encoded, true );

var_export( $decoded );

输出:

array (
  0 => NULL,
  1 => NULL,
)

如果这不是您所期望的,那么您需要对 GET 请求应用更正。

您可以通过检查传递给 curl

$url 来检查它

如果您想在解码前检查实际响应是什么,请使用var_export( $p_result );