Как выполнить итерацию строкового символа UTF-8 по символу с помощью индексации?
Когда вы обращаетесь к строке UTF-8 с помощью оператора скобок $ str [0]
, кодированный в utf символ состоит из 2 и более элемента.
Например:
$str = "Kąt";
$str[0] = "K";
$str[1] = "�";
$str[2] = "�";
$str[3] = "t";
, но я бы хотел иметь:
$str[0] = "K";
$str[1] = "ą";
$str[2] = "t";
Это возможно с mb_substr
, но это очень медленно, т.е.
mb_substr($str, 0, 1) = "K"
mb_substr($str, 1, 1) = "ą"
mb_substr($str, 2, 1) = "t"
Есть ли другой способ взаимодействия строкового символа по символу без использования mb_substr
?