2012-10-19 204 views
1

SLOVED - 必須編輯BOXFILE在PAGODABOX對於PHP EXENTSIONSLOVED - FTP Api? PHP服務器到服務器上傳

我知道有一噸的PHP FTP功能,但我已經在過去獲得的基本試過很多次上班。可以連接,但通常列出目錄遇到問題,等等

問:

是否有一個服務或API,我可以告訴它下載此文件夾(或zip)然後上傳&解壓到這臺服務器? (只是轉移也可以)。

PHP有這方面的功能,但我不能讓它工作 - 使用Laravel框架與PagodaBox託管的SFTP包,並且似乎寶塔甚至沒有安裝php FTP模塊。

有沒有辦法做到這一點沒有PHP或一些遠程服務?

或者我需要獲得第二臺服務器,它具有正確的FTP PHP功能設置,然後創建我自己的小api?任何擁有所有正確設置的優秀託管公司?什麼我試圖做


更多信息...

我創造那裏的人們建立網站,然後可以下載一個ZIP文件的網站(HTML文件等)服務,但我會喜歡爲我的客戶提供一種使用FTP自動爲他們上傳的方式。

+0

PagodaBox塊,所以他們可能會阻止FTP(或離開它完全)。你問PagodaBox btw? –

+0

您也可以使用[Symfony 2快速入門](https://pagodabox.com/cafe/robinvdvleuten/symfony2-quickstart)嘗試[FTPBundle](http://knpbundles.com/iJanki/FtpBundle)(單獨安裝)。 –

+0

我必須在PagodaBox的boxfile中添加PHP擴展ftp,這使得FTP功能可以正常工作。 :) 獲取整個boxfile的東西。 感謝您的幫助:) –

回答

1

可以使用cURL.

下面是一個示例代碼做到這一點:FTP通過他們的管理系統中至少

<?php 
if(!function_exists('curl_init')) 
    die('cURL isn\'t available too!'); 

$file = "toUp.zip"; 
$ch = curl_init(); 
$fp = fopen($file, 'r'); 

curl_setopt($ch, CURLOPT_URL, 'ftp://username:[email protected]/public_html/'.$file); 
curl_setopt($ch, CURLOPT_UPLOAD, 1); 
curl_setopt($ch, CURLOPT_INFILE, $fp); 
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($file)); 

curl_exec($ch); 
$err_no = curl_errno($ch); 
curl_close($ch); 
fclose($fp); 

if($err_no == 0){ 
    echo 'FTP Transfer complete.'; 
}else{ 
    echo 'FTP Transfer error: '.$err_no; 
    echo '. See http://curl.haxx.se/libcurl/c/libcurl-errors.html'; 
} 
?> 
+0

Nicee!謝謝!我要試試這個。 :) –