Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Странно, не работает is_file
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Странно, не работает is_file

Страниц (1): [1]
 

1. etoYA - 19 Февраля, 2012 - 20:12:49 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. $scan = scandir($this->dir.$name);
  3. foreach($scan as $file) {
  4.         if (is_file($file)) {
  5.                 echo $file.'<br />';
  6.         }
  7. }
2. Tox - 19 Февраля, 2012 - 20:17:41 - перейти к сообщению
а вы уверены, что в дир есть файлы?
3. Okula - 19 Февраля, 2012 - 20:20:19 - перейти к сообщению
Нужно путь до файла указывать, а не только его имя.
PHP:
скопировать код в буфер обмена
  1. $scan = scandir($this->dir.$name);
  2. foreach($scan as $file) {
  3.         if (is_file($this->dir.$name.'/'.$file)) {
  4.                 echo $file.'<br />';
  5.         }
  6. }
4. Мелкий - 19 Февраля, 2012 - 20:21:47 - перейти к сообщению
Внимание с путями. scandir отдаёт только имена файлов/директорий, а для is_file и прочих - должен быть корректный путь до файла относительно скрипта.
Проще говоря, что-то вроде is_file($this->dir.$name.$file)
5. etoYA - 19 Февраля, 2012 - 20:22:13 - перейти к сообщению
Okula, спасибо большое)

 

Powered by ExBB FM 1.0 RC1