Вопрос по функции filesize

proWoke

Новичок
Вопрос по функции filesize

Вот не понимаю из за чего ошибка возникает. Вот код:
PHP:
<?php
 $dir2 = "1";
 $files2 = scandir ($dir2); 
foreach ($files2 as $k=>$v) {
 $size = filesize ($v);
 echo $size."<br>"; 
} 
?>
Мне надо чтобы он размер файлов выводил поочереди в папке 1.
Если я напишу echo filesize (1/filename.txt); , то выводит, а если через foreach, то выдаёт вот какие ошибки:
Warning: filesize(): stat failed for data in /home/prowoke/Docs/localhost/zadachi/dirsize.php on line 5
Warning: filesize(): stat failed for form.html in /home/prowoke/Docs/localhost/zadachi/dirsize.php on line 5
Warning: filesize(): stat failed for script1.php in /home/prowoke/Docs/localhost/zadachi/dirsize.php on line 5
Warning: filesize(): stat failed for script2.php in /home/prowoke/Docs/localhost/zadachi/dirsize.php on line 5
.
Помогите разобраться, пожалуйста.
 

Gas

может по одной?
судя по ману ф-ция scandir возвращает только имена файлов/папок, без пути. Либо сам добавляй потом путь в filesize, либо используй [m]glob[/m]
 

mity

Новичок
Попробуйте
PHP:
 $size = filesize ($dir2.'/'.$v);
А вообще работать лучше с полными путями, начинающимися с корня диска.
Потому, как текущий путь может самопроизвольно измениться, например при ob_start() и вызова shutdown функции.
 

proWoke

Новичок
Спасибо я уже со всем разобрался. У меня вот ещё вопрос. А в PHP нету готовой функции, которая возвращает размер каталога? В книге ничё про неё не могу найти. Вот и пытаюсь сам её написать, а то может я колесо изобретают. Расскажите, пожалуйста.
 

proWoke

Новичок
Как понять для листинга? Что такое листинг я знаю, но как мой вопрос с ним связан не пойму что то. А классы это к ООП относится? Я его просто пока не трогал вообще.
 
Сверху