㈠ 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功能。
㈡ PHP在沒有ftp擴展下,如何上傳文件到FTP伺服器
php和ftp?用的什麼伺服器?建個ftp方便些,如果是windows的伺服器就用郵箱,網路硬碟之類的中轉,如果是linux的伺服器就用winscp這個工具!
㈢ 怎麼通過PHP來支持FTP和HTTP上傳
給你一些 php 操作 ftp 的函數:
FTP 函數
ftp_alloc— 為要上傳的文件分配空間
ftp_cp— 切換到當前目錄的父目錄
ftp_chdir— 在 FTP 伺服器上改變當前目錄
ftp_chmod— 設置 FTP 伺服器上的文件許可權
ftp_close— 關閉一個 FTP 連接
ftp_connect— 建立一個新的 FTP 連接
ftp_delete— 刪除 FTP 伺服器上的一個文件
ftp_exec— 請求運行一條 FTP 命令
ftp_fget— 從 FTP 伺服器上下載一個文件並保存到本地一個已經打開的文件中
ftp_fput— 上傳一個已經打開的文件到 FTP 伺服器
ftp_get_option— 返回當前 FTP 連接的各種不同的選項設置
ftp_get— 從 FTP 伺服器上下載一個文件
ftp_login— 登錄 FTP 伺服器
ftp_mdtm— 返回指定文件的最後修改時間
ftp_mkdir— 建立新目錄
ftp_nb_continue— 連續獲取/發送文件(non-blocking)
ftp_nb_fget— 從 FTP 伺服器獲取文件並寫入到一個打開的文件(非阻塞)
ftp_nb_fput— 將文件存儲到 FTP 伺服器 (非阻塞)
ftp_nb_get— 從 FTP 伺服器上獲取文件並寫入本地文件(non-blocking)
ftp_nb_put— 存儲一個文件至 FTP 伺服器(non-blocking)
ftp_nlist— 返回給定目錄的文件列表
ftp_pasv— 返回當前 FTP 被動模式是否打開
ftp_put— 上傳文件到 FTP 伺服器
ftp_pwd— 返回當前目錄名
ftp_quit— ftp_close 的 別名
ftp_raw— 向 FTP 伺服器發送命令
ftp_rawlist— 返回指定目錄下文件的詳細列表
ftp_rename— 更改 FTP 伺服器上的文件或目錄名
ftp_rmdir— 刪除 FTP 伺服器上的一個目錄
ftp_set_option— 設置各種 FTP 運行時選項
ftp_site— 向伺服器發送 SITE 命令
ftp_size— 返回指定文件的大小
ftp_ssl_connect— 打開 SSL-FTP 連接
ftp_systype— 返回遠程 FTP 伺服器的操作系統類型
例子:
<?php
$ftp_server="";
$ftp_user_name="";
$ftp_user_pass="";
$file="";//tobeuploaded
$remote_file="";
//簡歷ftp鏈接
$conn_id=ftp_connect($ftp_server);
//使用用戶名和密碼登錄
$login_result=ftp_login($conn_id,$ftp_user_name,$ftp_user_pass);
//上傳文件
if(ftp_put($conn_id,$remote_file,$file,FTP_ASCII)){
echo"成功上傳文件:$file ";
exit;
}else{
echo"上傳文件錯誤:$file ";
exit;
}
//關閉ftp鏈接
ftp_close($conn_id);
㈣ php能否實現ftp的功能如下
可以有這么一個思路。
你其中一台伺服器,比較A上,寫一個php標本,一直執行判斷B伺服器某個目錄下的文件和A在同一個目錄下的文件,他們的文件修改日期是不是相同,文件名是不是相同。如果不同,馬上file_get_content()等,把B伺服器的那個文件抓取過來。這樣可以做到同步了。或者你只要掃描整個文件夾,如果有變動,整個文件夾拿過去
其實你應該是在負載均衡吧 在多個伺服器之間同步代碼。
㈤ 使用PHP如何實現高效安全的ftp伺服器
FTP伺服器想必大家都不陌生,使用起來,現成的軟體也很多。不過免費的軟體功能有時候並不符合自己需求,又無法二次開發,付費軟體價格又比較高昂。PHP的swoole擴展,是PHP語言的高性能網路通信框架,提供了PHP語言的非同步多線程伺服器,非同步TCP/UDP網路客戶端,非同步MySQL,資料庫連接池,AsyncTask,消息隊列,毫秒定時器,非同步文件讀寫,非同步DNS查詢。
㈥ php可以用ftp擴展做文件的斷點續傳么
我覺得這個你就應該去後盾人看一看.裡面有很豐富的視頻教導資源.值得你去借鑒一下,我就是從那裡學習到的.
㈦ php中缺少ftp拓展庫,如何在添加上去
你的PHP應該是FastCGI模式吧,最省事的辦法就是重新編譯一個PHP,也費不了多少時間
㈧ 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);
?>
㈨ 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伺服器的詳細的資料。
㈩ 為什麼php不能列出ftp里的目錄
如果你確定用戶密碼地址都沒錯的話,確定PHP有開啟ftp擴展
================
你是怎麼用的,這樣試一下
<?php
// 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 file list for /
$buff = ftp_rawlist($conn_id, '/');
// close the connection
ftp_close($conn_id);
// output the buffer
var_mp($buff);
?>