使用Tumblr API PHP发布Photoset

时间:2012-08-26 23:05:18

标签: php api set tumblr photos

我正在尝试将多张照片上传到Tumblr的photoset帖子中。我正在使用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));

我做错了什么?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

我认为你应该迭代$ scanning_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')