Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用imgurapi和PHP获取图像数据_Php_Json_Api_Curl_Imgur - Fatal编程技术网

使用imgurapi和PHP获取图像数据

使用imgurapi和PHP获取图像数据,php,json,api,curl,imgur,Php,Json,Api,Curl,Imgur,我对php非常陌生,我正在尝试使用IMGURAPI(我的代码基于几个教程),我正在尝试从imgur获取一个图像,并将其显示在网页上。所以我用的是这个代码 <?php $client_id = '<ID>'; $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,'https://api.imgur.com/3/image/rnXusiA'); curl_setopt($ch,CURLOPT_CONNECTTIMEOU

我对php非常陌生,我正在尝试使用IMGURAPI(我的代码基于几个教程),我正在尝试从imgur获取一个图像,并将其显示在网页上。所以我用的是这个代码

<?php  
  $client_id = '<ID>';

  $ch = curl_init();
  curl_setopt($ch,CURLOPT_URL,'https://api.imgur.com/3/image/rnXusiA');
  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 5);
  curl_setopt($ch,CURLOPT_FOLLOWLOCATION, true);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id));
  $result = curl_exec($ch);
  curl_close($ch);

  $json = json_decode($result, true);
?>

$result
转换为关联数组后,我尝试访问数据

$data=$json->data->link


但是,
$data
中没有任何内容,我得到了一个
试图获取非对象属性的错误。我假设imgur没有返回任何数据。那么我做错了什么呢?

我读了更多关于
curl
的内容,并重新编写了代码

<?php 
  $client_id = "<ID>";
  $c_url = curl_init();
  curl_setopt($c_url, CURLOPT_SSL_VERIFYPEER, false);
  curl_setopt($c_url, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($c_url, CURLOPT_URL,"https://api.imgur.com/3/image/rnXusiA");
  curl_setopt($c_url, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id));
  $result=curl_exec($c_url);
  curl_close($c_url);
  $json_array = json_decode($result, true);
  var_dump($json_array);
?>

我希望这能帮助任何不熟悉imgur API的人。

您可以将
$result
转换为关联数组,但仍然尝试使用
->
访问数据?如果
$result
是一个数组,您可以通过执行
$json['data']['link']来访问数据
。使用
打印($result)
并查看输出的结构。。
$image_array = $json_array["data"]["images"];

foreach ($image_array as $key => $value) {
    echo $value["link"];
}