2014-10-13 4 views
0

Мне нужно загрузить все вложения в приложении Podio. Я могу получить все файлы id и их url и т. Д. Я просто не могу загрузить. Я пробовал много возможных решений (get_raw(), file_get_contents и т. Д.).Скачать файл на Podio

Допустим, у меня есть этот файл, который я хочу сохранить:

$items = PodioFile::get_for_app(APP_ID, array(
     'sort_by' => 'name', 
     'sort_desc' => 'false', 
     'limit' => 1 
    )); 

(...) 

$item->file_id = '123456789' 
$item->link = 'https://files.podio.com/111222333'; 

$path_to_save = 'backup/'; 

Как я могу сохранить его?

ответ

1

Там пример готов для копирования + вставки на: http://podio.github.io/podio-php/api-requests/

// Get the file object. Only necessary if you don't already have it! 
$file = PodioFile::get($file_id); 

// Download the file. This might take a while... 
$file_content = $file->get_raw(); 

// Store the file on local disk 
file_put_contents($path_to_file, $file_content); 
+0

Спасибо! Я уже пробовал. Он сохраняет файл с + -25kb, который не открывается. Все файлы имеют такой размер (pdf, doc, xls ...) .. У вас есть какие-либо другие предложения? – rennyrocha

+0

Положите podio-php в режим отладки и проверьте его журнал, также проверьте свой журнал ошибок PHP для подсказок. Скорее всего, это общая проблема PHP, а не то, что характерно для podio-php –

0
mkdirs("downloads"); 
foreach ($podio_item->fields['images']->values as $key => $podio_file) { 
    $file   = PodioFile::get($podio_file->file_id); 
    $file_content = $file->get_raw(); 
    file_put_contents("downloads/$podio_image->name", $file_content); 
}