我試圖列出目錄中只有jpg文件。有超過200個,但使用下面的代碼,只有約100個獲得列表。我已經嘗試了不同的變體來提取文件擴展名,但這是唯一的工作:$sub = substr($file, -3);
列出目錄中的文件/提取文件擴展名的問題
任何人都可以告訴我爲什麼所有的文件都沒有顯示出來嗎?
完整的源:
<?php
require('index.inc');
$page = new buildpage();
$page->buildHeader();
$currentdir = '/home/tim/Documents/Web/';
$dir = opendir($currentdir);
echo "<ol>";
while ($file = readdir($dir)){
$file = readdir($dir);
$sub = substr($file, -3);
$ext = "jpg";
if (strcasecmp($sub, $ext) == 0) {
echo "<li>$file</li>";
}
}
echo "</ol>";
?>
我建議你在'substring`中使用`strrpos($ file,'。')`(最後一個點的索引),因爲不是所有的擴展名的長度都是3. – Ben 2010-12-04 02:07:12