2017-02-09 17 views
1

Я делаю простой веб-сервер, отвечающий за строку JSON с PHP.Почему кодировка php-файла влияет на кодирование данных ответа?

Он работал хорошо, пока я не сменил некоторые php-файлы с помощью Notepad ++.

С того момента я изменил некоторые PHP файлы с Notepad ++, мой мобильный клиент сделал ошибку

CompanyName.ProjectName.V1.Client.ApiException: Неожиданный символ встречается при разборе значение:. Путь», линия 0, позиция 0.`.

Я решил эту проблему, удалив 'UTF-8 BOM (Binary Mask Order)' в первый из PHP-файлов.

Но, насколько я знать, что PHP - это язык скриптов. Почему кодирование файлов PHP влияет на кодирование данных ответа? В Python такой же язык скриптов, как и PHP, нет проблем с кодировкой файлов.

Поскольку я мало знаю о PHP, мне интересно, почему что произошло.

ответ

0

PHP ожидает, что сценарии соответствуют стандарту Unicode. Ac сь на стандарте Unicode, спецификация для UTF-8 файлов не рекомендуется:

2.6 Схемы кодировки

Использование BOM не требуется и ни рекомендуется для UTF-8, но может быть встречается в контексты, где данные UTF-8 преобразуются из других форм кодирования , которые используют спецификацию или где спецификация используется как подпись UTF-8 . См. Подраздел «Байт заказа» в Разделе 16.8, Специальные предложения для получения дополнительной информации.

Hat совет: What's different between UTF-8 and UTF-8 without BOM?

Вы можете рассмотреть возможность использования программного обеспечения для редактирования, что правильно имеет дело с PHP. Мне нравится Atom (https://atom.io/), бесплатное программное обеспечение с открытым исходным кодом, которое поддерживает PHP и многие другие языки.

 Смежные вопросы

  • Нет связанных вопросов^_^