Передумови: Я зіткнувся з дійсно дивним випуском, де частина сторінки php просто перестала розбиратися, але лише тоді, коли вона була завантажена на сервер. Місцево працює добре. Частина, де вона відрізалася, була після коментованого рядка коду. Вилучено коментар, який він розбирав до наступного коментаря.
Виявляється, проблемою були закінчення рядків. Вони були CR лише без LF, і сервер * nix не розпізнає CR тільки як новий рядок, тому він трактував коментар як розповсюдження на весь решта файлу.
Я спробував створити новий файл (після ввімкнення "показати всі символи") всередині Notepad ++ і натиснув клавішу Enter. Він показав CRLF.
Далі я створив новий текстовий файл у Провіднику Windows (Win7 x64), потім відкрив його в Блокноті ++. Я натиснув клавішу Enter, і вона лише вставила CR не LF.
Тепер актуальне питання, чому? Наскільки я знаю, Windows повинна базуватися на CRLF, а не тільки на CR. Чи є спосіб, щоб Notepad ++ завжди використовував CRLF або, принаймні, припускав CRLF з файлом 0 байтів?
Edit->EOL Conversion->Windows Format
це я не міг знайти. Закінчив робити пошук / заміну з розширеними символами, але це набагато надійніше.