我在外面套了一個div 為什麼又多出來兩個空的div呢 為什麼每次總是多出來兩個空的東西呢?這是哪裡的原因呢?怎麼樣才能去掉呢?
$dir = "upload/"; if (is_dir($dir)){ if ($dh = opendir($dir)){ while (($file = readdir($dh))!= false){ echo ''; if (!is_dir($file)) { $filePath = $dir.$file; echo ""; } echo ''; } closedir($dh); } }
回複內容:
我在外面套了一個div 為什麼又多出來兩個空的div呢 為什麼每次總是多出來兩個空的東西呢?這是哪裡的原因呢?怎麼樣才能去掉呢?
$dir = "upload/"; if (is_dir($dir)){ if ($dh = opendir($dir)){ while (($file = readdir($dh))!= false){ echo ''; if (!is_dir($file)) { $filePath = $dir.$file; echo ""; } echo ''; } closedir($dh); } }
列印下
print_r(readdir($dh));
就知道為什麼了。
readdir 會列印出 . 和 .. ,所以你的 echo ""應該放在if !is_dir裡邊
多出來的兩個應該是目前的目錄的 . 和上級目錄的 .. 你把這個兩個過濾掉就行
做個if判斷就好了
$dir = "upload/"; if (is_dir($dir)){ if ($dh = opendir($dir)){ while (($file = readdir($dh))!= false){ if (!is_dir($file)) { //. 和.. 在檔案夾下,不管在什麼系統中. 和..都是存在的, .指向目前的目錄, ..上一級目錄 if ($file === '.' || $file === '..') { continue; } echo ''; $filePath = $dir.$file; echo ""; echo ''; } } closedir($dh); }}