【发布时间】:2016-06-13 09:20:12
【问题描述】:
我有一个带有文件上传按钮的 HTML 表单。我希望用户能够选择图像并提交表单,然后服务器应使用 PHP 将文件上传到 imgur 并检索该图像的直接链接(意味着 URL 应以 .jpg 或 .png 等结尾.)
如果有人能告诉我如何使用 PHP 将图像上传到 imgur,然后检索到该图像的直接链接,以便我可以将链接存储到 MySQL 数据库,我将不胜感激。如果无法检索直接图像链接,则正常的 imgur 链接也可以使用。这意味着这样的事情也将起作用:
https://imgur.com/gallery/KlzhGuE
但是,第一要务是这样的:
https://i.imgur.com/KlzhGuE.jpg
编辑:所以,我设法上传了图片并使用 api 获得了 json 回复。 在我解码返回的 json 并将其 var_dump 后,我得到了这个:
object(stdClass)#1 (3) {
["data"]=>
object(stdClass)#2 (21) {
["id"]=>
string(7) "yPfV2Tq"
["title"]=>
NULL
["description"]=>
NULL
["datetime"]=>
int(1456813618)
["type"]=>
string(9) "image/png"
["animated"]=>
bool(false)
["width"]=>
int(123)
["height"]=>
int(23)
["size"]=>
int(3149)
["views"]=>
int(0)
["bandwidth"]=>
int(0)
["vote"]=>
NULL
["favorite"]=>
bool(false)
["nsfw"]=>
NULL
["section"]=>
NULL
["account_url"]=>
NULL
["account_id"]=>
int(0)
["comment_preview"]=>
NULL
["deletehash"]=>
string(15) "bNjtF9OSdG1QAM7"
["name"]=>
string(0) ""
["link"]=>
string(30) "http://i.imgur.com/yPfV2Tq.png"
}
["success"]=>
bool(true)
["status"]=>
int(200)
}
现在如何提取http://i.imgur.com/yPfV2Tq.png的部分?
【问题讨论】:
-
这是否解释了您要查找的内容:subinsb.com/uploading-images-using-imgur-api-in-php?
-
我之前看过这个,但是自从发布后很多事情都发生了变化,所以无法让它工作。从那时起,Imgur 也改变了很多东西,我的意思是在他们的 api 中。
-
可以理解。你可以使用作曲家拉入图书馆吗?看起来至少有 2 个库可用于与 Imgur API 交互,如果可以的话,这将使您的生活变得轻松。 github.com/Adyg/php-imgur-api-client 看起来很有前途,包括如何使用库上传图像的文档 (github.com/Adyg/php-imgur-api-client/blob/master/doc/Image.md)。
-
是的,在身份验证方面,如果您还没有获得客户端 ID 和密码 (api.imgur.com/#registerapp),则需要向 Imgur 注册您的应用程序,然后库应该处理剩下的大部分都给你
-
网址将在
$json->data->link