Как преобразовать неверные символы базы данных (ascii в utf-8)Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как преобразовать неверные символы базы данных (ascii в utf-8)

Сообщение Anonymous »

Я знаю, что многие люди скажут, что на этот вопрос уже был дан такой ответ https://stackoverflow.com/a/4983999/1833322 Но позвольте мне объяснить, почему это не так просто..

Я хотел бы использовать PHP для преобразования чего-то «похожего на ascii» в «utf-8»

Существует веб-сайт, который делает это https://onlineutf8tools.com/convert-ascii-to-utf8

Когда я ввожу эту строку Z…Z, я получаю обратно Z⬦Z< /code> это правильный результат.

Я пробовал iconv и некоторые функции mb_. Хотя я не могу понять, способны ли эти функции делать то, что я хочу, или какие опции мне нужны. Если с помощью этих функций это невозможно, можно использовать собственный PHP-код. (На веб-сайте используется JavaScript, и я не думаю, что PHP менее эффективен в этом отношении)

Для ясности: цель состоит в том, чтобы воссоздать на PHP то, что делает этот веб-сайт. . Чтобы не вести семантические дебаты по поводу ascii и utf-8.

РЕДАКТИРОВАТЬ: на веб-сайте используется https://github.com/mathiasbynens/utf8.js, в котором говорится


он ​​может кодировать/декодировать любые скалярные значения кодовых точек Юникода в соответствии со стандартом кодирования.

Стандартная ссылка на https://encoding.spec.whatwg.org/#utf-8 Итак, эта библиотека утверждает, что реализует стандарт, а как насчет PHP?

Подробнее здесь: https://stackoverflow.com/questions/615 ... i-to-utf-8
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»