как преобразовать текст написанный кирилицей к примеру Код (Text): $a="новый"; в следующий вид (вставила пробелы. а то преобразовывалось) Код (Text): $a="& #1085;& #1086;& #1074;& #1099;& #1081;"; ну в общем с кодировкой нужна какая-то махинация.. а то при выведении в первой случае пишет иероглифы.. а во втором всё нормально Спасибо!
с этой функцией пробывала.. но чт-то не помогло.. пробывала с вот этими параметрами : k - koi8-r; w - windows-1251; i - iso8859-5; a - x-cp866; d - x-cp866; m - x-mac-cyrillic; наверное всё же не эту функцию использовать надо.. не помогло
не не... эта не та функция.. я просто не понял, что хотелось... в твоем случае советую взглянуть сюда: http://zhilinsky.ru/2007/08/10/php-unicode/
запись вида & #1074;- это если не ошибаюсьтэто кодировка Unicode. Следовательно тебе надо конвертировать кирилицу в Unicode. Вот в ссылке, что я дал, там должен быть готовый скрипт... посмотри...
по ходу я хочу преобразовать в десятичный юникод своё русское слово.. и занести обратно в переменную.. вот.. в php5 вроде бы есть функции преобразующие в юникод .. а у меня пхп4 .. возможно что-либо сделать в этом случае?
ага у меня тоже 4 версия... поэтому несработали функции Unicode_encode() =))) Да кажется возможно... взять каждую букву в слове и заменить на символы в юникоде.
ага у меня тоже 4 версия... поэтому несработали функции Unicode_encode() =))) Да кажется возможно... взять каждую букву в слове и заменить на символы в юникоде. Наверное вот так: PHP: <? $a="новый"; $encode= strtr($a, array( 'н'=>"& #1085;", 'о'=>"& #1086;", 'в'=>"& #1074;", 'ы'=>"& #1099;", 'й'=>"& #1081;", )); ?> но всетаки же это оч тупой вариант, т.к. если убрать пробел то он автоматически преобразуется в букву...
ну использовала функцию из тех что вы дали.. вот я остановилась на этой Код (Text): function win_utf8 ($in_text){ $output=""; $other[1025]="Ё"; $other[1105]="ё"; $other[1028]="Є"; $other[1108]="є"; $other[1030]="I"; $other[1110]="i"; $other[1031]="Ї"; $other[1111]="ї"; for ($i=0; $i<strlen($in_text); $i++){ if (ord($in_text{$i})>191){ $output.="&#".(ord($in_text{$i})+848).";"; } else { if (array_search($in_text{$i}, $other)===false){ $output.=$in_text{$i}; } else { $output.="&#".array_search($in_text{$i}, $other).";"; } } } return $output; } $a="новый"; $a=win_utf8($a);