鍍金池/ 問答/PHP/ php 連接sftp服務(wù)器下載文件夾所有文件

php 連接sftp服務(wù)器下載文件夾所有文件

請問,php如何連接sftp服務(wù)器下載文件夾的所有文件,我只看到php提供下載單個文件的函數(shù),或者如何遍歷sftp服務(wù)器下得文件夾的目錄呢?

回答
編輯回答
貓館

根據(jù)你的問題描述,你似乎想要通過php對文件夾進行掃描,然后對文件夾內(nèi)的逐個文件進行下載操作,

//思路是使用以下兩個php函數(shù)
//掃描當前文件夾
scandir
//判斷是否為文件夾
is_dir

我的實現(xiàn)代碼

function do_search($path,$result){
        $dir = scandir($path);
        foreach ($dir as $key => $value) {
                if ($value!='.'&&$value!='..') {
                        //is dir
                        if (is_dir($path.'/'.$value)) {
                                $folder_info['folder'][]=$path.$value.'/';
                                $result = do_search($path.$value.'/',$result);
                        }
                        //not dir
                        else{
                                array_push($result,$path.$value);
                        }
                }
        }
        //$folder_info是記錄所有“文件夾”名稱的數(shù)組
        //return $folder_info;
        //$result是記錄所有“文件”名稱的數(shù)組
        return $result;
}

//結(jié)果數(shù)組是$result
$result =array();

//$path你在linux的路徑,比如/var/www/html/
$all_file_info = do_search($path,$result);
//然后對$all_file_info這個變量進行下載操作,或者在函數(shù)do_search里面判斷為not dir時進行操作
2018年9月12日 08:11