как решить мульти загрузки с sftp в php codeigniter - PullRequest
0 голосов
/ 23 февраля 2019

У меня проблемы с использованием PHP Codeigniter для загрузки файлов SFTP на удаленный сервер.когда я загружаю файл больше чем один.так вот мой код:

for($row = 0; $row < $total; $row++)  
{
  $origin = $directory.$file[$row];
  $destination = $des.$file[$row];
  $send= $this->upload($config,$origin,$destination);   
  $filename = $file[$row];
  print_r($filename."\n");

} $this->sftp->close();

поэтому, если у меня есть 1000 файлов для загрузки, и успешной загрузки от 1 до 50. но когда файл 51 не удается загрузить и получить сообщение об ошибке

ftp не может загрузить

, по каким причинам может отображаться ошибка, описанная выше, как создать дескриптор для повторного подключения и перезагрузить следующий файл.так что эта функция:

public function upload($config,$origin,$destination)
{

    $connect = $this->sftp->connect($config);
    $upload = $this->sftp->upload($origin, $destination, 'ascii', '0775');
    //create handling upload
    return $upload;
}

и загрузка примера функции из библиотеки sftp:

$file_to_send = @file_get_contents($locpath);
$sftp = intVal($this->sftp);
$stream = fopen("ssh2.sftp://{$sftp}{$rempath}", 'w');       
if (@fwrite($stream, $file_to_send) === FALSE)
{
  if ($this->debug == TRUE)
  {
    $this->_error('ftp_unable_to_upload');
  }
    return FALSE;
  }
  return TRUE

исходная библиотека sftp из библиотека sftp

так какобрабатывать для повторного подключения и повторной загрузки файла при загрузке получить сообщение FTP не удалось загрузить.Спасибо

1 Ответ

0 голосов
/ 24 февраля 2019

вам нужно увеличить время загрузки страницы, если вы работаете на localhost.после размещения не нужно увеличивать время загрузки.

...