获取系统文件夹以外目录内的所有文件的列表
问题描述:
我是yii的新手,我需要获取系统文件夹以外目录中的文件列表。我尝试了与获取系统文件夹以外目录内的所有文件的列表
$fileListOfDirectory = array();
$pathTofileListDirectory = Yii::app()->request->baseUrl.'/path/to/files';
foreach(new DirectoryIterator($pathTofileListDirectory) as $file) {
if($file->isFile() === TRUE && $file->getBasename() !== '.DS_Store' && substr(strrchr($file->getPathname(), '.'), 1) == 'txt') {
array_push($fileListOfDirectory, $file->getBasename());
}
}
,但我拿到永诺错误
DirectoryIterator :: __结构(/ myYiiInstallation /系统/路径/到/文件) [directoryiterator .--构建]: 失败打开目录:从线路没有这样的文件或目录
foreach(new DirectoryIterator($pathTofileListDirectory) as $file) {
那么还有另一种获取文件列表的方法,或者我该怎么做? thnx!
答
您可以使用此....
$fileListOfDirectory = array();
$pathTofileListDirectory = Yii::app()->request->baseUrl.'/path/to/files' ;
if(!is_dir($pathTofileListDirectory))
{
die(" Invalid Directory");
}
if(!is_readable($pathTofileListDirectory))
{
die("You don't have permission to read Directory");
}
foreach (new DirectoryIterator ($pathTofileListDirectory) as $file) {
if ($file->isFile() === TRUE && $file->getBasename() !== '.DS_Store') {
if ($file->getExtension() == "txt") {
array_push ($fileListOfDirectory, $file->getBasename());
}
}
}
答
我想你应该尝试,而不是在文件系统中使用的baseUrl http://www.yiiframework.com/doc/api/1.1/CApplication#basePath-detail。
+0
同样的错误在这里 - 但thanx的尝试! – headkit
嘿,代码工作 - 路径中出现错误:我需要为它添加'/../'。对不起这是我的错! – headkit
您应该真的删除问题或自己添加答案并接受答案。 – Paystey