2016-02-12 33 views
1

我提出與我需要用下載的圖像串...將內聯FTP鏈接用於文件的正確方法是什麼?

ftp://FTPUSER:[email protected]\Path\To\File.jpg 

,我想知道是否有使用這個字符串,而不是使用正則表達式/ parse_url削減更好的辦法它和輸入信息到一個傳統的FTP FTP_CONNECT,ftp_login,ftp_pasv,等等,等等...

也許就像一個

ftp_get_file(ftp://FTPUSER:[email protected]\Path\To\File.jpg) 

或類似的東西。

任何想法?

在此先感謝您的幫助!

+0

這是一個網址,爲什麼不[parse_url](http://php.net/parse_url)? –

+0

更新後的帖子,謝謝。 – SoWizardly

+0

好吧,當parse_url爲此設計時,爲什麼用你自己的解析函數重新發明車輪?它已經散佈在我所有的東西之中,並且跨越了所有的東西,你將從頭開始,花更多的時間進行調試/測試,而不是實際完成任何有用的事情。 –

回答

1

感謝@ user3158900,工作液....

function downloadFileViaFTPURL($remote_data) 
{ 
    // I dunno why, but this made it work... 
    $search_replace = ["\\" => "/"]; 

    foreach ($search_replace as $search => $replace) { 
     $remote_data = str_replace($search, $replace, $remote_data); 
    } 

    if ($remote_data = fopen($remote_data, "r")) { 
     $filename = explode("/", $remote_data); 
     $filename = end($filename); 

     if (!file_exists("/path/to/folderforfile")) { 
      mkdir("/path/to/folderforfile", 0755, true); 
     } 

     if (file_put_contents("/path/to/folderforfile/$filename", $remote_data)) { 

      return true; 

     } 
    } 
    return false; 
} 

downloadFileViaFTPURL("ftp://FTPUSER:[email protected]\Path\To\File.jpg"); 

希望這可以幫助別人!

相關問題