@sparco356

Как разделить строку из 16 символов UTF-8 на блоки по 32-бита PHP?

Здравствуйте Уважаемые знатоки, помогите пожалуйста студенту=(
Мне необходимо реализовать алгоритм шифрования TEA на PHP.
UTF-8 строка состоящая из 16 символов: "1234567887654321"
Как мне ее разбить на 4 блока по 32-бита? на википедии на языке СИ обозначается как "uint32_t", помогите пожалуйста.
Заранее спасибо.
  • Вопрос задан
  • 469 просмотров
Решения вопроса 1
@nirvimel
UTF-8 не делится на байты (а только на кодовые знаки).
Если символы в вашей строке могут принимать значения только из диапазона ASCII, тогда эту строку следует перекодировать в ASCII (где 1 символ == 1 байт), а потом разбивать на байты или блоки байт.
Если в строке возможны не ASCII символы (юникод), то придется забыть о фиксированной длинне в байтах. Такая строка может занимать любое количество байт (в зависимости от ее содержимого).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы