A. php中如何實現ftp上傳基礎代碼
p工具我們都用過是用來上傳文件的,那麼在php中如何用代碼實現呢,下面簡單介紹一個最基礎最簡單的列子,首先根據我們使用ftp工具來說,實現文件上傳需要打開ftp工具->輸入ftp地址,埠號,賬號,密碼登陸ftp->從本地選擇相應文件上傳到ftp相應目錄,php中要實現這么一個簡單的功能無非也是這樣。
第一步:打開ftp
$ip="101.101.101.101";
$name="name";
$pwd="mima";
$con=ftp_connect($ip,"21")
or("連接失敗");
第二步:登陸ftp
ftp_login($con,$name,$pwd);
第三步:上傳本地test.php文件到ftp
image目錄下
ftp_put($con,"image/test.php","test.php",FTP_ASCII);
此時在ftp上的image目錄下可以看到test.php文件了,當然這里上傳文件,可以擴展下寫個上傳表單,將表單附件上傳ftp這樣就更方便,這里只作為一個文件最基礎上傳ftp功能。
B. 用PHP操作FTP下載報錯:ftp_get(): Can't open
錯誤提示這個文件打不開,可能是文件名錯誤或者路徑不對,你先檢查一下這個文件。
C. 用php向ftp上傳文件
其實就是三步問題,和你操作ftp工具一樣,思路基本一樣。
參考資料:http://www.itnet.org.cn/news419.html
D. php 獲取ftp文件夾大小
<?php
$file = 'somefile.txt';
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// get the size of $file
$res = ftp_size($conn_id, $file);
if ($res != -1) {
echo "size of $file is $res bytes";
} else {
echo "couldn't get the size";
}
//close the conntion
ftp_close($conn_id);
?>
E. 使用PHP如何實現高效安全的ftp伺服器
FTP伺服器想必大家都不陌生,使用起來,現成的軟體也很多。不過免費的軟體功能有時候並不符合自己需求,又無法二次開發,付費軟體價格又比較高昂。PHP的swoole擴展,是PHP語言的高性能網路通信框架,提供了PHP語言的非同步多線程伺服器,非同步TCP/UDP網路客戶端,非同步MySQL,資料庫連接池,AsyncTask,消息隊列,毫秒定時器,非同步文件讀寫,非同步DNS查詢。
F. php跟ftp有什麼區別
php是網頁的一種格式。還有其他的 如 htm html asp 。
ftp只是 一種上傳的方式! 將自己電腦上的文件上傳到對方的伺服器中
兩類不是同一種東西!~~
免費空間只有靠自己找~~現在比較難找。。
G. 通過php連接ftp需要怎麼樣的配置的,我直接連接怎麼鏈接不上呢
你這段代碼代碼我測試過了,沒有問題,可以正常連接到FTP伺服器。
從以下兩個方面來考慮吧:
① 你的PHP伺服器是否支持FTP功能,通過phpinfo()函數查看,一定要是FTP support:enabled。若不是,找下資料,開啟PHP支持FTP功能。
② 你的FTP伺服器是否正常運行,先通過FTP客戶端登陸一下,若不能登錄,則要先解決FTP登錄的問題。
H. php程序可以實現開通ftp賬號和密碼的功能嗎
關鍵是看你用的FTP伺服器,ftp伺服器的賬戶信息存放在哪裡,ftp伺服器的口令加密演算法不容易破解,這是關鍵難題。
比如IIS可以使用系統賬戶登錄,那麼你的PHP文件需要做的是新建立用戶,這個可以用這樣的PHP語句來建立:
$user='user';
$pass='pass';
system("net
user
$user
$pass
/add");
如果你使用SERV-U伺服器,那麼用戶名和密碼是存放在ServUDaemon.ini文件裡面,但是密碼的加密演算法沒有公開,無法做出建立用戶設置密碼的功能。
在linux系統下這一切就非常簡單,因為幾乎所有的FTP伺服器都是把密碼存放在文件中,並且使用標準的MD5或者cprt加密,這樣添加用戶就非常簡單。
一句話,完全可行,但是你必須有FTP伺服器的詳細的資料。
I. php能否實現ftp的功能如下
可以有這么一個思路。
你其中一台伺服器,比較A上,寫一個php標本,一直執行判斷B伺服器某個目錄下的文件和A在同一個目錄下的文件,他們的文件修改日期是不是相同,文件名是不是相同。如果不同,馬上file_get_content()等,把B伺服器的那個文件抓取過來。這樣可以做到同步了。或者你只要掃描整個文件夾,如果有變動,整個文件夾拿過去
其實你應該是在負載均衡吧 在多個伺服器之間同步代碼。
J. 如何使用php中ftp函數上傳文件以及解決上傳文件失敗的方法
一、 ftp上傳圖片參數說明。
1 $source:本機圖片完整的路徑。(/a/b/c.jpg)
2 $des :上傳目標linux主機完整的路徑。
3 $ftp_server:ftp地址
4 $ftp_user_name:ftp用戶名
5 $ftp_user_pass: ftp密碼
6 $port:埠
二、如何使用php中ftp函數上傳文件的方法
例如:
本地地址為:/a/b/c.jpg
目標地址為:/d/a/b/c.jpg
2.1、linux主機上傳linux主機。
01 function ftpSendFile($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
02 {
03 // 此步驟是在於上傳目錄與本機的目錄不一致轉換使用
04 $des = "/d" . $des;
05 $conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
06 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
07 ftp_pasv($conn_id, TRUE);
08 $ftp_folder = dirname($des);
09 $dir = explode("/", $ftp_folder);
10 $path = "";
11 for ($i = 0; $i < count($dir); $i++) {
12 $path .= "/" . $dir[$i];
13 if (!ftp_chdir($conn_id, $path)) {
14 $result = ftp_mkdir($conn_id, $path);
15 }
16 }
17 if (ftp_put($conn_id, $des, $source, FTP_BINARY)) {
18 return 1;
19 } else {
20 return 0;
21 }
22 ftp_close($conn_id);
23 }
2.2、windows主機上傳linux主機。
01 function sendPic($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
02 {
03 $des = "/d" . $des;
04 $conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
05 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
06 ftp_pasv($conn_id, TRUE);
07 $ftp_folder = dirname(str_ireplace('\\', '/', $des));
08 $dir = explode("/", $ftp_folder);
09 $path = "";
10 for ($i = 0; $i < count($dir); $i++) {
11 $path .= "/" . $dir[$i];
12 if (!ftp_chdir($conn_id, $path)) {
13 $result = ftp_mkdir($conn_id, $path);
14 }
15 }
16 if (ftp_put($conn_id, str_ireplace('\\', '/', $des), $source, FTP_BINARY)) {
17 return 1;
18 } else {
19 return 0;
20 }
21 ftp_close($conn_id);
22 }
上面的兩種使用php中ftp函數上傳文件的方法基本可以滿足正常的使用。