Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Я могу предложить небольшие косметические поправки и одну серьёзную поправку
Начну с серьёзной:
Эта поправка касается способа прохода по дериктории - в мануале стоит:
PHP код: Выделить весь код

Обратите внимание на способ, которым return -значение функции
 readdir() проверяется в следующем примере. Мы явным образом 
проверяем, идентично ли return-значение (равно и того же типа, что и
 -- см. Операции сравнения) FALSE, поскольку иначе любое вхождение
 директории, имя которого вычисляется в FALSE, остановит цикл.
 
Пример 1. Список всех файлов в директории
 
// Обратите внимание, что !== не существовала до 4.0.0-RC2
<?php
if ($handle opendir('/path/to/files')) { 
echo 
"Directory handle: $handle\n"
echo 
"Files:\n"
 
/* Это корректный способ цикла по директории. */ 
while (false !== ($file readdir($handle))) { 
echo 
"$file\n"

 
/* Это НЕПРАВИЛЬНЫЙ способ цикла по директории. */ 
while ($file readdir($handle)) { 
echo 
"$file\n"

 
closedir($handle);
}
?>

соответственно, данный момент надо подправить


И ещё моё личное замечание:
Касается вот этой строчки
PHP код: Выделить весь код

if(filetype($b)!=dir

Если надо отфильтровывать директории, то намного легче будет так написать
PHP код: Выделить весь код

if(!is_dir($b)) 


filetype как мне кажется, более ресурсоёмкая, так как она больше вариантов проверки в себя включает, а is_dir отвечает всего лишь на один вопрос:папка или не папка. Там где счёт файлов ведётся на десятки тысяч это может сыграть свою роль
Будут ещё идеи, напишу

Последний раз редактировалось vadimiron, 01-03-2005 в 02:39.


Отправлено: 02:33, 01-03-2005 | #11