Мда, а у меня был однажды косяк... Два идентичных скрипта. Один работает, другой - нет, не находит переменную. Так как переменная создавалась локально и жила только в 1й функции, я вообще был в непонятках. Сравнил 2 исходника фактически посимвольно... "О, посимвольно!" - сказал себя я и запустил TotalCommander на сравнение двух файлов. Total сказал "кря" и выделил мне красным РОВНО ОДНУ БУКВУ!
То, что во всех редакторах выглядело, как "e", оказалось немецкой буквой "a с точкой над ней" (аумляуф или как еще, запомнить не могу, госэкзамен сдавал по английскому). В итоге выяснилось, что в тот день у провайдера были проблемы с серваком и судя по всему при сливе или заливе файла он и побился.
Офф, конечно, но думаю, будет некоторым интересно... так на будущее.... =)