導航:首頁 > 編程語言 > php循環文件夾

php循環文件夾

發布時間:2023-08-10 13:36:42

php如何遍歷指定文件夾,獲取所有文件列表並生成下載鏈接

試編寫代碼如下:

<?php

$dir="D:/WWW/ftp";//指定的路徑
$sitepath='http://localhost/ftp/';
//遍歷文件夾下所有文件
if(false!=($handle=opendir($dir))){
echo"$dir目錄下的文件列表:<BR/>";
$i=0;
while(false!==($file=readdir($handle))){
if($file!="."&&$file!=".."&&!is_dir($dir.'/'.$file)){
echo'<ahref="'.$sitepath.$file.'">'.$file.'</a><br/>';
}
}
//關閉句柄
closedir($handle);
}

?>


代碼中需要提示的是:


如果是運行於互聯網上,需要考慮文件的訪問安全性。


運行截圖:


② php中讓文件循環下載的代碼怎麼寫

自己寫的方法 但是在中文路徑下會 出現錯誤
/*
*查看問價夾中的子文件及其子文件夾
*$path 付文件夾路徑
*return $arr_dir 文件夾中所有文件和子文件夾的信息
*/
function selDir($path){

$arr_dir = array();

if(is_file($path)){
header("Location: error.php");
exit;
}

$arr_dir = scandir($path);

foreach ($arr_dir as $v){

if($v != "." && $v != ".."){
//print "<hr>".$path.$v;
if(is_dir($path.'/'.$v)){
//print "<hr>是文件夾<hr>";
$arr_dir['dir'][] = array(
'fileUrl' => $path.'/'.$v,
'filename' => $v,
'type' => '文件夾',
'cTime' => @date('Y/m/d H:i',filectime($path.'/'.$v)+8*3600),
'mTime' => @date('Y/m/d H:i',filemtime($path.'/'.$v)+8*3600),
'filesize' => ''
);
}else{
//print "<hr>不是是文件夾<hr>";
$arr_dir['file'][] = array(
'fileUrl' => $path.'/'.$v,
'filename' => $v,
'type' => pathinfo($path.'/'.$v, PATHINFO_EXTENSION),
'cTime' => @date('Y/m/d H:i',filectime($path.'/'.$v)+8*3600),
'mTime' => @date('Y/m/d H:i',filemtime($path.'/'.$v)+8*3600),
'filesize' => filesize($path.'/'.$v)
);
}
}
}
//var_mp($arr_dir);
return $arr_dir;
}

③ php遍歷輸出文件夾下所有txt文件

可以,使用glob函數可以非常容易搞定,支持通配符。

<?php
header('Content-type:text/html;charset=utf-8');
$i=1;
foreach(glob('/file/*.txt')as$txt)
{
echo'第'.$i.'個文件'.basename($txt).'的內容是:';
echofile_get_contents($txt);
$i++;
echo'<hr/>';
}

④ PHP遍歷文件及文件夾

<?php
$dir = 'F:\\game';

function read_dir_all($dir) {
$ret = array('dirs'=>array(), 'files'=>array());
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if($file != '.' && $file !== '..') {
$cur_path = $dir . DIRECTORY_SEPARATOR . $file;
if(is_dir($cur_path)) {
$ret['dirs'][$cur_path] = read_dir_all($cur_path);
} else {
$ret['files'][] = $cur_path;
}
}
}
closedir($handle);
}
return $ret;
}

$p = read_dir_all($dir);
echo '<pre>';
var_mp($p);
echo '</pre>';
?>

閱讀全文

與php循環文件夾相關的資料

熱點內容
編譯怎麼學 瀏覽:329
數碼管顯示0到9plc編程 瀏覽:665
伺服器是為什麼服務的 瀏覽:765
java定義數據類型 瀏覽:874
安卓pdf手寫 瀏覽:427
什麼是app開發者 瀏覽:284
android鬧鍾重啟 瀏覽:101
程序員失職 瀏覽:518
在雲伺服器怎麼改密碼 瀏覽:586
伺服器pb什麼意思 瀏覽:940
51駕駛員的是什麼app 瀏覽:670
php靜態變數銷毀 瀏覽:886
編程買蘋果電腦 瀏覽:760
flac演算法 瀏覽:497
reactnative與android 瀏覽:663
程序員是干什麼的工作好嗎 瀏覽:258
kbuild編譯ko 瀏覽:469
條件編譯的宏 瀏覽:564
韓語編程語言 瀏覽:646
小程序開發如何租用伺服器 瀏覽:80