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

Как трансформировать текст более коротко?

Есть такой код (он продемонстрирован внизу) он меняет текст в Unicode а нужно кое что новое
Нужно чтобы каждый текст трансформировался более коротко, текст будет записан в массивах.
Сейчас слово пример = 108710881080108410771088
проблема в том что слишком длинный Unicode

вот код который трансформирует в Unicode возможно он вам не понадобиться
function mb_str_split($string) {
    return array_map(function ($i) use ($string) {
          return mb_substr($string,$i,1,"utf-8");
    }, range(0, mb_strlen($string, "utf-8")-1));
}

function incode($string) {
	return array_reduce(mb_str_split($string), function($result, $e) {
		$convertedString = unpack("N", mb_convert_encoding($e, "UCS-4BE", "UTF-8"));
                return $result . (is_array($convertedString) ? $convertedString[1] : '');
	}, "");
}
  • Вопрос задан
  • 2246 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Задачу не понял от слова совсем, но если отталкиваться от условия "кодировать покороче", то можно сделать так:
function incode($string) {
	return $string;
}

вместо 108710881080108410771088 вернёт "пример" - в 2 раза короче.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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