我的代码:
if ($d = opendir('.')) {
while (($file = readdir($d)) !== false) {
if ( $file != "." && $file != ".." ){
echo "filename: $file \n";
$files[]=$file;
}
}
closedir($d);
}
输出:
filename: audio_files filename: backup_files filename: compressed_files filename: database_files filename: data_files filename: developer_files filename: disk_image_files filename: executable_files filename: font_files filename: genstats.php filename: raster_image_files filename: spreadsheet_files filename: text_files filename: text_filesdesktop__dup.ini filename: video_files filename: web_files
而text_filesdesktop__dup.ini
甚至不存在。
C:\Users\Steve\Desktop\Files>del text_filesdesktop__dup.ini Could Not Find C:\Users\Steve\Desktop\Files\text_filesdesktop__dup.ini
我尝试过使用scandir()
,删除文件并重新创建等等,但无济于事。我根本无法让那个.ini文件消失。
答案 0 :(得分:0)
可能是您的目录中有隐藏文件
您使用的是什么平台,WiNDOWS或Linux,
如果您只想排除以点开头的文件,“。”,
试试这个:
$files = readdir('/path/to/folder');
$files = array_filter($files, create_function('$a','return ($a[0]!=".");'));
以上功能仅重新启动文件,chich不是以。
开头但是在Windows上隐藏文件的工作方式不同,我不知道怎么玩它。