[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Странный баг. Имя папки или файла - "0".
LRCenter
Есть скрипт вывода содержимого папки: читаю в цикле содержимое дирректории и вывожу, предварительно проверив не ссылка ли это файловой системы не родительскую папку.


while($fold=readdir($dir)){
if(($fold!=".") && ($fold!="..")){

...

}}


Так вот, заметил интересный эффект, если в читаемой папке есть папка или файл с именем "0" (без всяких расширений у файлов), то нчего вообще не отображается. Как можно решить эту проблему, кроме как запрещением закачивания\создания элементов с таким именем?



Спустя 10 минут, 45 секунд (20.04.2011 - 11:06) Trianon написал(а):
Вообще-то в мануале на этот счет всё предельно ясно изложено
while(($fold=readdir($dir)) !== false){

Спустя 4 минуты, 58 секунд (20.04.2011 - 11:11) LRCenter написал(а):
Trianon
Круто! А теперь объясните почему не работало.

Спустя 9 минут, 10 секунд (20.04.2011 - 11:20) Invis1ble написал(а):
LRCenter
потому что php не статически типизированный язык и 0 интерпретируется как false

Спустя 1 минута, 6 секунд (20.04.2011 - 11:21) linker написал(а):
0 == false
0 !== false

Спустя 3 минуты, 12 секунд (20.04.2011 - 11:25) LRCenter написал(а):
Я так и думал. Оператор эквивалентности рулит. Спасибо.


_____________
Меньше кода - меньше багов ©
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.