扫描文件夹而不是数组

时间:2010-12-12 12:34:44

标签: php file filesystems

我有这段代码:

<?php
$allowed = array('file1', 'file2', 'file3');

if (in_array($_GET["url"], $allowed)) {
    // You can include
} else {
   // Error message and dont include
}
?>

但是,如果不是在数组中写入所有文件名,我怎么能这样做,例如我的文件夹FILES /中的文件被接受,没有其他文件。怎么做?

2 个答案:

答案 0 :(得分:3)

使用file_exists功能,如下所示:

if (file_exists('FILES/'.basename($_GET["url"]))) {
    // You can include
} else {
   // Error message and dont include
}

答案 1 :(得分:0)

检索文件夹中文件的功能:

<?
function fGetFilesInFolder($sFolder) {

    $aFiles = array();
    if(file_exists($sFolder)) {
        if ($handle = opendir($sFolder)) {
            while (false !== ($sFile = readdir($handle))) {
                if ($sFile != "." && $sFile != "..") $aFiles[] = $sFile;
            }
            closedir($handle);
        }
    }
    return $aFiles;
}
?>