Поскольку вы не указали, что именно вы подразумеваете под «потерей форматирования», в любом случае сложно ответить:
Согласно ответу src, если окончания строк изменяются из-за передачи ASCII/текстового режима, результирующий преобразованный файл может восприниматься как потерявший форматирование, если он открыт в редакторе, который не поддерживает окончания целевых строк. Хотя вряд ли это объясняет, почему затронут только один файл. Хотя технически WinSCP может выбрать другой режим передачи, например, на основе размера файла или отметки времени модификации, если это настроено, я сомневаюсь, что вы это сделали. Также обратите внимание, что WinSCP по умолчанию использует двоичный режим передачи. Было бы полезно, если бы вы указали, какой режим передачи вы фактически используете с WinSCP. Окончательным источником этой информации является файл журнала сеанса WinSCP. Кроме того, совместное использование соответствующей части файла журнала также поможет в расследовании.
Другая возможность заключается в том, что затронутый исходный файл изначально был создан с другим окончанием строки (например, в другом редакторе, чем вы обычно используете). Таким образом, проблема не имеет ничего общего с режимом передачи или WinSCP. И разница, возможно, проявляется только после того, как вы откроете файлы с помощью третьего редактора на удаленной стороне, который поддерживает только один из форматов окончания строки.
Хотя в обоих этих случаях файл все равно должен работать в PHP, поскольку PHP поддерживает окончания строк как в Unix, так и в Windows. Возможно исходный файл имеет такой странный формат, что при передаче в ASCII/текстовом режиме сервер запутался и неправильно преобразовал файл. Но это всего лишь дикая догадка.
Опять же, нам нужно больше информации, чтобы помочь вам.
person
Martin Prikryl
schedule
28.05.2014
//
в PHP./* comment */
не будет проблем со всем в одной строке или в любом другом формате - person mituw16   schedule 27.05.2014vi
на консоли) - person Martin Prikryl   schedule 28.05.2014