php латиница в кирилицу

webim
На сайте с 24.04.2013
Offline
15
735

Нужна помощь в php/mysql

есть функция преобразования латиницы в кириллицу:

function transliterate($input){
$gost = array(
"Є"=>"YE","І"=>"I","Ѓ"=>"G","і"=>"i","№"=>"-","є"=>"ye","ѓ"=>"g",
"А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D",
"Е"=>"E","Ё"=>"YO","Ж"=>"ZH",
"З"=>"Z","И"=>"I","Й"=>"J","К"=>"K","Л"=>"L",
"М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R",
"С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"X",
"Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>"'",
"Ы"=>"Y","Ь"=>"","Э"=>"E","Ю"=>"YU","Я"=>"YA",
"а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d",
"е"=>"e","ё"=>"yo","ж"=>"zh",
"з"=>"z","и"=>"i","й"=>"j","к"=>"k","л"=>"l",
"м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
"с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"x",
"ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"",
"ы"=>"y","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya",
" "=>"_","—"=>"_",","=>"_","!"=>"_","@"=>"_",
"#"=>"-","$"=>"","%"=>"","^"=>"","&"=>"","*"=>"",
"("=>"",")"=>"","+"=>"","="=>"",";"=>"",":"=>"",
"'"=>"","\""=>"","~"=>"","`"=>"","?"=>"","/"=>"",
"\"=>","["=>"","]"=>"","{"=>"","}"=>"","|"=>""
);

return strtr($input, $gost);
}

есть таблица с полем title

$result = mysql_query ("SELECT * FROM posts WHERE `is_news`=1 LIMIT 1",$db);
$myrow = mysql_fetch_array ($result);

получаю его и с помощью функции преобразовываю

echo transliterate($myrow['title']);

но вместо mama_mula_ramy получаю "мама_мыла_раму"

если написать transliterate("мама мыла раму"); то все ок.

Почему когда с базы беру то работает не полностью.

Заранее спасибо.

samimages
На сайте с 31.05.2009
Offline
427
#1

UTF-8 - это ответ на ваш вопрос

Опыт как иммунитет — приобретается в муках! Хостинг: экономия до 1300 руб + домен в подарок ( https://clck.ru/XLscf ) / Аудит семантики от 15К [долго] - ЛС
webim
На сайте с 24.04.2013
Offline
15
#2

действительно, помогло

iconv('CP1251','UTF-8',$myrow['title']);

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий