Например есть строка
$string = 'жук';
Должно получиться
$arr[0] = 'ж';
$arr[1] = 'у';
$arr[2] = 'к';
Функция str_split возвращает
$arr[0] = '�';
$arr[1] = '�';
$arr[2] = 'у';
$arr[3] = 'к';
Больше я не нашел функций
Как можно решить эту проблему?
Может есть что то вроде mb_strlen():
Спустя 16 минут, 33 секунды (9.11.2011 - 20:36) dadli написал(а):
$string = 'жук';
$length = mb_strlen($string,"utf-8");
$i = 0;
$mas = array();
while ($i < $length) {
$rep = mb_substr($string,$i,1,"utf-8");
array_splice($mas,$i,1,$rep);
$i = $i + 1;
}
echo "<pre>";
var_dump($mas);
echo "</pre>";
Спустя 5 минут, 26 секунд (9.11.2011 - 20:42) Ser18 написал(а):
Я думал функция есть
Спасибо
Спасибо
Спустя 7 минут, 50 секунд (9.11.2011 - 20:49) twin написал(а):
Цитата (Ser18 @ 9.11.2011 - 17:42) |
Я думал функция есть Спасибо |
Вот две:
function mb_str_split($str):)
{
$str = iconv('utf-8', 'windows-1251', $str);
$arr = str_split($str);
return array_map(create_function('$v', 'return iconv("windows-1251", "utf-8", $v);'), $arr);
}
/*
function mb_str_split($str, $encoding = 'utf-8')
{
$cnt = mb_strlen($str, $encoding);
$arr = array();
$i = 0;
while($cnt > $i)
$arr[] = mb_substr($str, $i++, 1, $encoding);
return $arr;
}
*/
$str = 'жук';
$arr = mb_str_split($str);
Спустя 4 минуты, 24 секунды (9.11.2011 - 20:54) Ser18 написал(а):
Цитата (twin @ 9.11.2011 - 20:49) | ||
Вот две: function mb_str_split($str):) |
)))
Спасибо
Спустя 2 часа, 3 минуты, 24 секунды (9.11.2011 - 22:57) Winston написал(а):
:blink: Офигеть ! :blink: Вы знаете толк в извращениях :D
Вот как
Вот как
function my_split($str)
{
return preg_split("##u", $str, null, PREG_SPLIT_NO_EMPTY);
}
$str = 'жук';
print_r(my_split($str));