Не могу прочитать параметры некоторых файлов, т.е. файловые функции filetype filesize stat и др. не работают. Делаю так. Код (Text): $dir = "/tmp"; $dh = opendir($dir); while (false !== ($filename = readdir($dh))) { $file['name'] = $filename; $file['type'] = filetype($filename); $file['size'] = filesize($filename); $files[] = $file; } тип и размер файлов для некоторых файлов не определился. Потом решил воспользоватся file_exist, оказалось функция не находит некоторые файлы которые существуют и выводятся с помощью кода приведённого выше. Кто сталкивался, помогите плиз.
Попробуйте использовать абсолютные пути, а не относительные. $dir = dirname(__FILE__)."/tmp"; И еще: (false !== ($filename = readdir($dh))) Быстро разобрали, как работает?
Только некоторые файлы не находятся с помощью file_exist is_file stat filetype и др., скорее всего те которые были закачены не так давно. Абсолютные пути не помогли результат тот же. Что же это такое
Некоторые файлы и некоторые папки. Если сделать так Код (Text): $dir = "/myfolder/"; $dh = opendir($dir); while (false !== ($filename = readdir($dh))) { if (file_exists($filename)) { $file['name'] = $filename; $file['type'] = filetype($filename); $file['size'] = filesize($filename); $files[] = $file; } } То выведутся не все файлы и папки, т.е. file_exists не находит файлы. В мануале написано Результаты этой функции кэшируются. См. детали в clearstatcache(). Но как применить эту функцию правильно? Может надо изменить какие то настройки хостинга?
file_exists странная функция, если ей скормить путь не до файла, а каталога она сгенерит ошубку, я юзаю is_file
Бгг. А как определяем все или не все файлы вывелись? Hint: пользователь apache может не иметь тех прав, что есть у обычного пользователя.
код для php4 который написан выше выводит все файлы но функции определения типа размера и т.д. срабатывают не для всех файлов, в т.ч. file_exists. Всем спасибо, дело действительно было в путях. Но почему всё же для некоторых файлов функции отрабатывали
Ето мене? Правда я хайт, но ладно. Что правда права могут отличаться не может быть. Мне опять в детский сад идти? =)
Хех. Как звучит "Магические константы" Константа это идентификатор (имя) для простого значения. Как следует из названия, это значение не может изменяться в процессе исполнения скрипта. ('Магические константы' __FILE__ и __LINE__ являются исключением из этого правила, но они в действительности не являются константами.)