Моя проблема заключается в следующем:utf8_encode не дает нужного результата
хранить массив, который имеет ключи, как «е», «е» и т.д. В какой-то момент, я должен получить значение из ключ. Это хорошо работает. Но если я хочу хранить «і», «é» и т. Д. В качестве ключей, это не приведет к правильному результату (результаты в ). Моя страница должна быть в UTF-8. Выяснив проблему, я узнал, что utf8_encode должен помочь моей проблеме. Этого не произошло: хотя он создал более читаемый персонаж, он все еще полностью отличался от того, что я хочу. Если важно, phpinfo дает:
Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1
Что может стать причиной проблемы?
Редактировать: Я думаю, что клавиши массива выполняют некоторую потерю данных. Это правда? Если да, то как предотвратить?
Редактировать2: Решения, которые я пробовал до сих пор: получить значение ключа массива - не удалось; создать массив с одинаковыми клавишами, но значения utf-8 символов: не удалось; Ошибка utf8_encode; [пытался с обоими] iconv_set_encoding: failed; ini_set не удалось; Ошибка mb_internal_encoding. Все вернулись либо с помощью Ã, либо .
Вывод может быть «ISO-8859-1» в соответствии с этими настройками. Это абсолютно не связано с 'utf8_encode'. Проверьте с вашим браузером, какая кодировка применяется. – hakre
Да, выход кажется ISO-8859-1 каким-то образом. Как я могу исправить это без редактирования php.ini? – axiomer
Отправил заголовок, который сигнализирует об этом. Также отключите кодировку вывода iconv, если вы не знаете, что это такое, вам это не понадобится. Проверьте руководство PHP, как вы можете изменить это во время выполнения. Удачи! – hakre