怎么在PHP利用scandir函數(shù)對特定的目錄進行排除-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)怎么在PHP利用scandir函數(shù)對特定的目錄進行排除,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)公司基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供成都IDC機房托管 四川大帶寬租用 成都機柜租用 成都服務(wù)器租用。

scandir()函數(shù)返回一個數(shù)組,其中包含指定路徑中的文件和目錄。如下所示:

例子:

復(fù)制代碼 代碼如下:

<?php
print_r(scandir('test_directory'));
?>


輸出:

復(fù)制代碼 代碼如下:

Array
(
[0]=>.
[1]=>..
[2]=>1.txt
[3]=>2.txt
)


大部分情況只需要該目錄的文件列表數(shù)組,如下:

復(fù)制代碼 代碼如下:

Array
(
[0]=>1.txt
[1]=>2.txt
)


一般是通過排除“.”或者“..”的數(shù)組項解決的:

復(fù)制代碼 代碼如下:

<?php
functionfind_all_files($dir)
{
    $root = scandir($dir);
    foreach($rootas$value)
    {
        if($value === '.' || $value === '..'){
            continue;
        }
        if(is_file("$dir/$value")){
            $result[] = "$dir/$value";
            continue;
        }
        foreach(find_all_files("$dir/$value")as$value)
        {
            $result[] = $value;
            }
        }
    return$result;
    }
?>


另外一種方法,利用array_diff函數(shù),剔除scandir函數(shù)執(zhí)行得到的數(shù)組:

復(fù)制代碼 代碼如下:

<?php
$directory='/path/to/my/directory';
$scanned_directory=array_diff(scandir($directory),array('..','.'));
?>


通常情況代碼管理會產(chǎn)生.svn文件,或者限制目錄訪問權(quán)限的.htaccess等文件。所以通過array_diff函數(shù)來過濾會更方便。

以上就是怎么在PHP利用scandir函數(shù)對特定的目錄進行排除,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章標題:怎么在PHP利用scandir函數(shù)對特定的目錄進行排除-創(chuàng)新互聯(lián)
瀏覽路徑:http://muchs.cn/article24/dpshje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化服務(wù)器托管網(wǎng)站制作、全網(wǎng)營銷推廣定制網(wǎng)站、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司