真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在PHP中獲取目錄中的全部內(nèi)容

怎么在PHP中獲取目錄中的全部內(nèi)容?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計、網(wǎng)站制作、彰武網(wǎng)絡(luò)推廣、小程序開發(fā)、彰武網(wǎng)絡(luò)營銷、彰武企業(yè)策劃、彰武品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供彰武建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com

$path = $argv[1];

// 獲取目錄下所有內(nèi)容
$dirs = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);

foreach($dirs as $k=>$d){
    echo 'key:'. $k, PHP_EOL;
    if($d->isDir()){
        echo $d->getPathname(), PHP_EOL;
    }else{
        echo $d->getFilename(), PHP_EOL;
    }
}

//執(zhí)行 php PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.php ../

// key:../.
// ../.
// key:../..
// ../..
// key:../source
// ../source
// key:../source/.
// ../source/.
// key:../source/..
// ../source/..
// key:../source/PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.php
// PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.php
// key:../source/PHP大文件讀取操作.php
// PHP大文件讀取操作.php
// key:../PHP大文件讀取操作.md
// PHP大文件讀取操作.md
// key:../PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.md
// PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.md

其實就一行代碼,然后直接循環(huán)輸出這個迭代器。從結(jié)果中我們可以看出,先進入 source 目錄遍歷完成后再遍歷外部的文件內(nèi)容,按照目錄、文件名的順序依次獲取了目錄下的所有內(nèi)容。是不是比我們自己寫遞歸函數(shù)要方便很多。

如果我們想獲取目錄下的所有PHP文件,并且計算他們的文件總大小呢?使用這一套迭代器操作也可以非常簡單的完成,我們只需要增加一個正則迭代器對前面的迭代器內(nèi)容進行一下過濾就好了:

// 獲取所有php文件
$regIts = new RegexIterator($dirs, '/^.+\.php$/i');
$fileSize = 0;
foreach($regIts as $k=>$p){
    echo $p->getSize() . ' ' .  $k, PHP_EOL;
    $fileSize += $p->getSize();
}
echo 'Total ', $fileSize, PHP_EOL;

// 622 ../source/PHP獲取目錄中的全部內(nèi)容RecursiveDirectoryIterator.php
// 869 ../source/PHP大文件讀取操作.php
// Total 1491

感覺就和 ls -l 一樣,可以方便的讓我們能夠進行目錄下的相關(guān)操作。這個類的使用就簡單的介紹到這里,關(guān)于SPL庫中還有許多值得我們探索的能力,慢慢學(xué)習(xí)慢慢實踐,不斷提升我們面向優(yōu)雅編程的能力。

測試代碼:

https://github.com/zhangyue0503/dev-blog/blob/master/php/202003/source/PHP%E8%8E%B7%E5%8F%96%E7%9B%AE%E5%BD%95%E4%B8%AD%E7%9A%84%E5%85%A8%E9%83%A8%E5%86%85%E5%AE%B9RecursiveDirectoryIterator.php

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


網(wǎng)頁標題:怎么在PHP中獲取目錄中的全部內(nèi)容
網(wǎng)頁URL:http://weahome.cn/article/ggcpde.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部