【发布时间】:2014-03-24 21:44:54
【问题描述】:
我正在创建一个测试文件以获取位于 Intranet 文件夹中的所有文件,并简单地将图标图像放在根据其扩展名列出的文件旁边。 出于某种原因,代码无法正确提取内容。
这是目录中文件的 Windows 资源管理器视图的屏幕截图。
这是我的代码:
<?php
$dir="file:///.....to_my_directory"; // Directory where files are stored
if ($dir_list = opendir($dir)) {
while(($filename = readdir($dir_list)) != false) {
if (is_dir($filename)) {
$img = 'folder_img.jpg';
} else {
$filestuff = pathinfo($filename);
$file_ext = isset($filestuff['extension']) ? $filestuff['extension'] : null;
switch($file_ext) {
case 'pdf':
$img = 'pdf_img.jpg';
break;
case 'doc' || 'docx' || 'docm' || 'dotm' || 'dotx':
$img = 'word_img.jpg';
break;
case 'xls' || 'xlsm' || 'xltx' || 'xlam' || 'xlsx' || 'xlm' || 'xlt' || 'xlsb':
$img = 'excel_img.jpg';
break;
case 'txt':
$img = 'txt_file_img.jpg';
break;
case NULL:
$img = 'blank_file_img.jpg';
break;
}
}
?>
<p><span><img src='<?php echo $img; ?>' height='23px;'/><a href="<?php echo $filename; ?>"><?php echo $filename;?></a></span></p>
<?php
}
closedir($dir_list);
}
?>
这就是我运行它时的样子:
问题是某些未列出的扩展正在拉动“Microsoft WORD”图标。
扩展名为“.mdb”的“Access Database”文件正在拉取一个 Word 图标,扩展名“.mdb_hcu”也在拉取一个 WORD 图标。
如何将其设为 BLANK 文件选项(请参阅答案为 NULL 的开关案例)
另外,我如何组织以便首先列出文件夹并且所有内容都按字母顺序排列?
是否有插件可以让我更轻松地实现这一目标?
【问题讨论】: