На моем локальном сервере эмулировать MAMP, он возвращает все буквы с акцентом правильно.
На моем производственном сервере Host by Dreamhost, для этого акцента он возвращает знак вопроса внутри ромба: â ..
Когда я делаю ajax-запрос на моем производственном сервере, я не могу кодировать свой объект в JSON, потому что он не распознает мои строковые значения как кодировку UTF-8 (необходимо использовать utf8_encode).
Что я должен сделать, чтобы решить эту проблему? Я не могу найти ответ.
РЕДАКТИРОВАТЬ
Я использую База данных с помощью utf8_unicode_ci для себя все таблицы и строки со строковым типом.
Заголовок запроса от Prod
Accept:application/json, text/plain, *
Accept-Encoding:gzip,deflate,sdch
Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4
Connection:keep-alive
Cookie:laravel_session=eyJpdiI6ImFlNW5ZbmljWkcwcVM5XC9QdGxtZGZZVUxwK2tZNWZiYlwvYkdPSHdIcGxkcz0iLCJ2YWx1ZSI6IjE0RU51M1ZYVlwvM1U2QlR0MjFuOGo2WXVtUXFLQkJzWFVRbjBoV2thVmZzSWNaOXozQVJXQjRHZFNjMkp6b0Z0RjZoV1wvN2Y0bVwvdThpbkpwdFdcL0U4Zz09IiwibWFjIjoiODE1YzJhZDYwMWU4MDkwMjM1YTg2NjU1MGVkMmZiNGZiOWVlNWJhODc3ZTAyOGVlOGEzMjJhMDRlYzdjNmIxMiJ9; _ga=GA1.2.474837750.1412291587; _gat=1; Hm_lvt_aff7c47cb709e5851f8459e1408034c6=1412291588; Hm_lpvt_aff7c47cb709e5851f8459e1408034c6=1412432225
Host:www.mywebsite.com
Referer:http://www.mywebsite.com
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36
X-Requested-With:XMLHttpRequest
Заголовок ответа от Prod
Connection:Keep-Alive
Content-Encoding:gzip
Content-Type:text/html; charset=UTF-8
Date:Sat, 04 Oct 2014 14:17:05 GMT
Expires:Sat, 04 Oct 2014 14:17:06 GMT
Keep-Alive:timeout=2, max=99
Server:Apache
Transfer-Encoding:chunked
Vary:Accept-Encoding,User-Agent
Заголовок запроса от локального
Accept:application/json, text/plain, *
Accept-Encoding:gzip,deflate,sdch
Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4
Connection:keep-alive
Cookie:SQLiteManager_currentLangue=2; laravel_session=eyJpdiI6Im1lSnNnTFRjbnFqU29NVVdoT1V2M0lqSlY1SncxdTF0MVwvd2QrNzFLT21jPSIsInZhbHVlIjoidzdxb2k2Zld3aUhJaWRKZnhIeFJ1XC9zeG1uaTNGblRETEkwd04ra1FjK0F5Y0JxQk1CbW9jdDNpcU01NE1BQlgxSmN6MXFDRkVBbjhRRFBqRXdpcFVRPT0iLCJtYWMiOiI2MmE2YTIzNDBiNjE5NjM2ZGE5NjNhOGQxZWU5YjIyMTZmNjI3NWVlNjdhYzY1ZDY1OGE5OTE3NTgyM2I5YzM2In0%3D
Host:localhost
Referer:http://localhost/
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36
X-Requested-With:XMLHttpRequest
Заголовок ответа от Local
Connection:Keep-Alive
Content-Encoding:gzip
Content-Type:text/html; charset=UTF-8
Date:Sat, 04 Oct 2014 14:16:49 GMT
Expires:Sat, 04 Oct 2014 14:16:50 GMT
Keep-Alive:timeout=5, max=99
Server:Apache/2.2.26 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.6 PHP/5.5.14 mod_ssl/2.2.26 OpenSSL/0.9.8za DAV/2 mod_perl/2.0.8 Perl/v5.18.2
Transfer-Encoding:chunked
Заранее спасибо.
я имел setLocale('fr_FR')
Теперь у меня есть setLocale('fr_FR.UTF8')
и это решает проблему!
Laravel больше не генерирует никаких ошибок, используя json_encode () для любого AJAX-запроса.
Моя функция strftime возвращает правильные символы для каждой буквы с ударением.
Других решений пока нет …