Задать вопрос
@sparco356

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

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

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

Похожие вопросы