如何在foreach循环中获取文件的文件大小

时间:2016-04-16 19:56:38

标签: php filesize

我正在尝试回显目录中所有文件的文件大小,但它没有回显文件大小,只回显文件名。这是我的代码:

$dir = "users/$UserName";
$files = scandir($dir);
sort($files);

echo '<table>';
foreach ($files as $file) {
if ($file != '.' && $file != '..') { 
?>

    <tr>
    <td><?php echo $file."<br />";
         ?>
    </td>
    <td>
        <?php echo filesize($file);   
        ?>
    </td>

    </tr>

<?php

}
}

我做错了什么?

2 个答案:

答案 0 :(得分:0)

scandir只返回文件名而不是路径到文件。

您应该使用filesize($file)

中的路径进行归档

答案 1 :(得分:0)

AS m_poorUser表示你需要将完整的文件路径传递给filesize()函数,如果你这样做了:

<?php echo filesize($dir."/".$file); ?>