回声json代码的一部分

时间:2013-08-18 16:23:27

标签: php json echo

我正在使用imgur API上传图片,然后我想回显图片的链接。 这是代码:

<?php
$client_id = 'xxxxxxxxxxx';

$file = file_get_contents("http://mywebsite.com/image.jpeg");

$url     = 'https://api.imgur.com/3/image.json';
$headers = array(
    "Authorization: Client-ID $client_id"
);
$pvars   = array(
    'image' => base64_encode($file)
);

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => $url,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_POST => 1,
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_HTTPHEADER => $headers,
    CURLOPT_POSTFIELDS => $pvars
));

$json_returned = curl_exec($curl); // blank response


echo $json_returned;
curl_close($curl);

?>

$json_returned是这样的:

{
    "data": {
        "id": "93MubeE",
        "title": null,
        "description": null,
        "datetime": 1376842908,
        "type": "image/jpeg",
        "animated": false,
        "width": 2197,
        "height": 1463,
        "size": 70884,
        "views": 0,
        "bandwidth": 0,
        "favorite": false,
        "nsfw": null,
        "section": null,
        "deletehash": "bk5k8HrAeH8aOtW",
        "link": "http://i.imgur.com/93MubeE.jpg"
    },
    "success": true,
    "status": 200
}

我怎样才能回显图片的网址?

1 个答案:

答案 0 :(得分:0)

Imgur要求通过HTTP访问API。

查看this answer有关如何使用认证文件的信息。

您也可以禁用检查选项(不推荐!):

CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_SSL_VERIFYHOST => 0

然后,要访问该链接,只需使用:

$json_returned = json_decode($json_returned, true);
echo $json_returned['data']['link'];