0

我正在尝试将多张照片上传到 Tumblr 的照片集帖子中。我正在使用 PHP 连接到 Tumblr 并进行身份验证。我可以发布个人照片和视频,但似乎无法找出照片集。Stack 上还有其他帖子可以帮助除 PHP 之外的其他语言。

我有一个照片目录。我获取这些文件的内容并使用 scandir 将它们放入一个数组中。但是当我尝试将该数组发布到 Tumblr 时,它不起作用。

$scanned_directory = array_diff(scandir($directory), array('..', '.'));

$connection->post("blog/$hostname/post", array('type' => 'photo', 'state' => $dest, 'link' => $sourceurl, 'source' => $sourceurl, 'caption' => $caption, 'tags' => $tags, 'data' => $scanned_directory));

我究竟做错了什么?

谢谢您的帮助!

4

1 回答 1

2

我认为您应该迭代 $scanned_directory 变量并确保您不只将路径和文件名提交给 Tumblr API,而是使用 file_get_contents() 提交图像文件的实际内容,一个工作示例可能看起来像这样:

foreach($scanned_directory as $filename){
    $data[] = file_get_contents($directory.'/'.$filename);
}
$connection->post("blog/$hostname/post", array('type' => 'photo', 'state' => $dest, 'link' => $sourceurl, 'source' => $sourceurl, 'caption' => $caption, 'tags' => $tags , 'data' => $data));

这应该可以解决问题,只需确保 $directory 变量实际上是图像目录的绝对路径(例如'/var/www/myhost.tld/public/images/photoset')

于 2012-09-25T11:28:47.850 回答