我正在做一个小画廊。在删除了一些前导数字和文件扩展名之后,我想从目录中读取文件名并打印下面的文件名。
我有两个版本的代码。
版本 1 未排序
$current_dir = "$DOCUMENT_ROOT"."/weddings2/";
$dir = opendir($current_dir); // Open the sucker
while ($file = readdir($dir)) // while loop
{
$parts = explode(".", $file); // pull apart the name and dissect by period
if (is_array($parts) && count($parts) > 1) { // does the dissected array have more than one part
$extension = end($parts); // set to we can see last file extension
$bfile= substr($file, 2); //strips the first two characters
$cfile= preg_replace(('/\d/'),' ',$bfile);//remove numbers
$cfile= preg_replace(('/_/'),' ',$cfile);
$cfile= preg_replace(('/.jpg/'),' ',$cfile);
if ($extension == "jpg" OR $extension == "JPG") // is extension ext or EXT ?
echo "<td><img src=\"weddings2/$file\"><br />$cfile</td>\n";
}
}
closedir($dir); // Close the directory after we are done
版本 2 排序,但我无法操作文件名
$current_dir = "$DOCUMENT_ROOT"."/weddings2/";
$dir = opendir($current_dir); // Open the sucker
$files = array();
while ($files[] = readdir($dir));
sort($files);
closedir($dir);
foreach ($files as $file)
if ($file <> "." && $file <> ".." && !preg_match("/^hide/i",$file))
$table_cell .= "<td><img src='".'weddings2/'. rawurlencode($file) ."'><br />$cfile</td>\n";
echo $table_cell;
是的,我知道我很笨。啊!