Отдать файл скриптом в UTF-8 кодировке

Обсуждение других вопросов связанных с веб-разработкой
Vovka
Сообщения: 2
Зарегистрирован:
15 янв 2016, 18:02

Отдать файл скриптом в UTF-8 кодировке

Vovka » 15 янв 2016, 19:25

Простенький код:
<?php
header("Cache-control: private");
header("Content-type: application/force-download");
header('Content-Description: File Transfer');
header("Content-Length: ".filesize("data.txt"));
header("Content-Disposition: filename=data.txt");
readfile("data.txt");
?>
Так вот, если php-файл с этим кодом создан в UTF-8 кодировке, то получаю кучу предупреждений на каждый хидер, типа:
Warning: Cannot modify header information...
Если php-файл создать в Windows-1251 кодировке, то все работает!
Глянул в HEX-виде файл, а там в начале записаны три байта: EF BB BF, которые все портят.
Удалив их - все работает!
Как быть, если php-файл нужен в UTF-8 кодировке?
Проект делаю в PhpStorm 2.1.4
Аватара пользователя
Максим
Сообщения: 5392
Зарегистрирован:
11 дек 2010, 20:29
Контактная информация:

Re: Отдать файл скриптом в UTF-8 кодировке

Максим » 15 янв 2016, 20:27

Сохраняйте файлы в UTF-8 кодировке без BOM. Если файл не пустой, то нажимайте "Преобразовать в UTF-8 без BOM".

Изображение
Vovka
Сообщения: 2
Зарегистрирован:
15 янв 2016, 18:02

Re: Отдать файл скриптом в UTF-8 кодировке

Vovka » 15 янв 2016, 22:54

Спасибо, буду знать.
Проблему решил обновлением PhpStorm до версии 10
Ответить