$data['country']= convert_tag_before_save('ru--blockchain');
$db->query("INSERT INTO art SET ?u", $data);
private function convert_tag_before_save($tag){
sscanf($tag, "%4s%s", $tr_key, $tag);
if ($tr_key =='ru--'){
$tag = mb_strtolower($tag);
$rus = array('щ', 'ш', 'ч', 'ц', 'й', 'ё', 'э', 'ю', 'я', 'х', 'ж', 'а', 'б', 'в', 'г', 'д', 'е', 'з', 'и', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'ъ', 'ы', 'ь');
$eng = array('shch', 'sh', 'ch', 'cz', 'ij', 'yo', 'ye', 'yu', 'ya', 'kh', 'zh', 'a', 'b', 'v', 'g', 'd', 'e', 'z', 'i', 'k', 'l', 'm', 'n', 'o', 'p', 'r', 's', 't', 'u', 'f', 'xx', 'y', 'x');
return str_replace($eng, $rus, $tag);
}
}
В режиме отладки вижу на выходе:
блокчейн
При запуске скрипта через php parser.php в базе вижу:
блокцхеиjн
Пробовал сменить кодировку на CP1251:
return mb_convert_encoding(str_replace($eng, $rus, $tag), 'CP1251')
Ничего не меняется, как шел блокцхеиjн так и идет..