Heim > Artikel > Backend-Entwicklung > So implementieren Sie die FTP-Datei-Download-Funktion mit Curl in PHP
In diesem Artikel wird hauptsächlich PHP zur Implementierung der FTP-Datei-Download-Funktion vorgestellt. Er hat einen bestimmten Referenzwert.
Der spezifische Inhalt ist wie folgt
Ich weiß nicht, warum die Verwendung der normalen ftp_get-Funktion zum Herunterladen von Dateien so langsam ist, aber die Verwendung des FTP-Clients lädt schnell herunter, also habe ich die Curl-Download-Methode geändert und die Geschwindigkeit ist normal
function file_upload($ftpIp,$ftpUser,$ftpPwd,$path,$fileSavePath){ $curlobj = curl_init();//初始化 //传入ftp的目标文件,如'ftp://192.168.3.1/test/1.jpg' curl_setopt($curlobj,CURLOPT_URL,"ftp://".$ftpIp."/".$path); curl_setopt($curlobj,CURLOPT_HEADER,0);//不输出header curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,0); //time out after 300s curl_setopt($curlobj,CURLOPT_TIMEOUT,2000);//超时时间 //通过这个函数设置ftp的用户名和密码,没设置就不需要! curl_setopt($curlobj,CURLOPT_USERPWD,$ftpUser.':'.$ftpPwd); $outfile = fopen($fileSavePath,'w+'); //保存到本地文件的文件名 curl_setopt($curlobj,CURLOPT_FILE,$outfile); $rtn = curl_exec($curlobj); if(curl_errno($curlobj)){ writeLog('Curl error: ' . curl_error($curlobj)); } fclose($outfile); curl_close($curlobj); if($rtn == 1){ return true; }else{ unlink($fileSavePath);//如果下载失败,但是本地open了这个文件,所以要删除 return false; } }
Es ist normal, dass der Test kleine Dateien herunterlädt, aber wenn die Netzwerkgeschwindigkeit sehr langsam ist und eine große Datei heruntergeladen wird, wird ein FTP-Timeout-Fehler gemeldet. Ich weiß immer noch nicht, was die Konfiguration ist Problem ist oder was das Problem ist.
Verwandte Empfehlungen:
php sendet XML-Daten über curl und erhält XML-Daten
php curlDetaillierte Erläuterung der Schritte zum Erhalten des Rückgabewerts
php implementiert curlUpload, Download, https-Login
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die FTP-Datei-Download-Funktion mit Curl in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!