四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

使用PHP遍歷文件夾與子目錄的函數(shù)代碼

我們要使用的函數(shù)有 Scandir,它的作用是列出指定路徑中的文件和目錄,就像 Dir 一樣。


> 與更強(qiáng)力的 Glob() 函數(shù),作用是以數(shù)組的形式返回與指定模式相匹配的文件名或目錄。
> 友情提醒,千萬(wàn)別像小邪那樣在電腦前面呆太長(zhǎng)時(shí)間,否則就會(huì)像小邪一樣得見鬼的高血糖。

一. 遍歷單層文件夾:

> 在掃描單層文件夾的問題是,兩個(gè)函數(shù)的結(jié)果雖有不同,不過表現(xiàn)是相差不大的。
> Scandir 函數(shù)會(huì)提供額外兩行,分別是 “.” 和 “..” ,而 Glob 則是沒有的。
復(fù)制代碼 代碼如下:
function get_dir_scandir(){
$tree = array();
foreach(scandir('./') as $single){
echo $single."<br/>/r/n";
}
}
get_dir_scandir();

function get_dir_glob(){
$tree = array();
foreach(glob('./*') as $single){
echo $single."<br/>/r/n";
}
}
get_dir_glob();

二. 遞歸遍歷文件樹:

> 在遞歸掃描文件夾樹的問題上,還是 Glob 函數(shù)的表現(xiàn)好一點(diǎn),很準(zhǔn)確的說(shuō)。
> Scandir 函數(shù)會(huì)莫名其妙掃描兩次 ../ 處的文件,也就是說(shuō)如果小邪有倆文件。
> ../b.php 和 ../a.php,結(jié)果就會(huì)在掃描報(bào)告上面出現(xiàn)兩次,很是奇怪。
復(fù)制代碼 代碼如下:
//Update at 2010.07.25 - 以下代碼作廢
$path = '..';
function get_filetree_scandir($path){
$tree = array();
foreach(scandir($path) as $single){
if(is_dir('../'.$single)){
$tree = array_merge($tree,get_filetree($single));
}
else{
$tree[] = '../'.$single;
}
}
return $tree;
}
print_r(get_filetree_scandir($path));

//Update at 2010.07.25 - 以下為新代碼
$path = './';
function get_filetree_scandir($path){
$result = array();
$temp = array();
if (!is_dir($path)||!is_readable($path)) return null; //檢測(cè)目錄有效性
$allfiles = scandir($path); //獲取目錄下所有文件與文件夾
foreach ($allfiles as $filename) { //遍歷一遍目錄下的文件與文件夾
if (in_array($filename,array('.','..'))) continue; //無(wú)視 . 與 ..
$fullname = $path.'/'.$filename; //得到完整文件路徑
if (is_dir($fullname)) { //是目錄的話繼續(xù)遞歸
$result[$filename] = get_filetree_scandir($fullname); //遞歸開始
}
else {
$temp[] = $filename; //如果是文件,就存入數(shù)組
}
}
foreach ($temp as $tmp) { //把臨時(shí)數(shù)組的內(nèi)容存入保存結(jié)果的數(shù)組
$result[] = $tmp; //這樣可以讓文件夾排前面,文件在后面
}
return $result;
}
print_r(get_filetree_scandir($path));

> Glob 函數(shù)掃描灰常準(zhǔn)確,并且會(huì)自動(dòng)按照字母排好順序,貌似是最佳方案。
復(fù)制代碼 代碼如下:
$path = '..';
function get_filetree($path){
$tree = array();
foreach(glob($path.'/*') as $single){
if(is_dir($single)){
$tree = array_merge($tree,get_filetree($single));
}
else{
$tree[] = $single;
}
}
return $tree;
}
print_r(get_filetree($path));

php技術(shù)使用PHP遍歷文件夾與子目錄的函數(shù)代碼,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 宇宙巨人希曼| 欧美一级毛片免费看| 哥哥回来了 电影| 《禁忌4》| 天注定在线观看| 嫦娥奔月读后感50字| 天上人间电影| jenna haze| 女总裁电视剧大结局| 对你上头了| 保镖电影在线完整观看| 胡晶| 有冈大贵| 长相思原著| 谢承均| 国家励志奖学金个人主要事迹1500字 | e-dog| 何丽萍| 中国往事演员表| 茶馆剧本完整版| 郑中基的电影全部作品| call me by your name电影| 尤勇个人资料简介简历| 形象管理| 人气生活曾经的辣妹动漫在线观看第二季 | 电影《瞬间》| 林正英僵尸大全免费看| 美女自拍偷拍| 郭云飞| cctv16节目单| 电影《七三一》| 52bb| 电视剧《反击》主要演员| 电影《金刚川》| 孩子身高不达标| 扫黑演员表 名单| 出轨幻想| 翁姆| 山海经动画片全40集免费观看| 成人免费视频视频| 电视剧狙击手免费全集播放|