PHP cURL gönderme ve Görüntüler İstemci / Sunucu alma

0 Cevap php

Ben bir süre için bu araştırma olmuştur ve bunun için bir cevap bulmak değil.

Ben bir istemci Sitesi yapma bizim API Server çağrıları var. Ben bir özel çağrı yapıldığında istemci Siteye bir görüntü aktarmak istiyorum ne.

Ben sunucudan imajı indiren bazı kod var, ama bu bize daha sonra onları silseniz bile, biz tutmak istemiyoruz sunucu tüm bu görüntüler oluşturmak için bizi zorluyor birden fazla arama yapmak için neden oluyor.



$originalFileUrl = createImage('createImage', $fileName);
downloadImage($originalFileUrl, $fileDestination);
deleteFileFromServer('deleteImage', $fileName);


function serverCall ($action, $fileName) {

      $serverCall = $SERVER.'/api.php?fileName=' . $fileName . '&action=' . $action;

      ob_start();
      $ch = curl_init();
      $timeout = 5; 

      curl_setopt ($ch, CURLOPT_URL, $serverCall);
      curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 0);
      curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
      curl_exec($ch);

      $fileContents = ob_get_contents();

      curl_close($ch);
      ob_end_clean();

      return $fileContents;
}

function downloadImage ($originalFileUrl, $fileDestination) {      
      // Starting output buffering
      ob_start();

      // create a new CURL resource
      $ch = curl_init();

      // set URL and other appropriate options
      curl_setopt($ch, CURLOPT_URL, $originalFileUrl);
      curl_setopt($ch, CURLOPT_HEADER, false);
      curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

      // set timeouts
      set_time_limit(30);                     // set time in secods for PHP
      curl_setopt($ch, CURLOPT_TIMEOUT, 30);  // and also for CURL

      // open a stream for writing
      $outFile = fopen($fileDestination, 'wb');

      curl_setopt($ch, CURLOPT_FILE, $outFile);

      // grab file from URL
      curl_exec($ch);
      fclose($outFile);

      // close CURL resource, and free up system resources
      curl_close($ch);  
      ob_end_clean();
}

$ OriginalFileUrl dosyanın mevcut konumu ve $ fileDestination benim yeni bir dosya olmak istediğiniz yere yoludur.

Benim sorum: Ben aktarmak ve her bir çağrıda görüntüyü silmek yerine birden fazla görüşme yapıyor oluşturmak sorumlu olacak Server bir PHP dosyası bir çağrı yapabilir miyim?

Ayrıca istemci sunucudan dosyayı ftp çok nedenlerden dolayı iyi bir seçenek değildir.

Teşekkür ederim

0 Cevap