Показать сообщение отдельно

  #1  
Старый 28.04.2009, 23:21
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
С нами: 9223466

Репутация: 3171


По умолчанию

Чтото типо.
PHP код:
$text "Привет люди! Это тестовый скрипт транслита!";
function 
translit($text)
{
    
$array str_split($text);

    
$rus = array('а''б''ц''д''е''ф''г''х''и''й''к''л''м',
        
'н''о''п''э''р''с''т''у''ю''в''ш''ы''ч''з''я''А',
        
'Б''Ц''Д''Е''Ф''Г''Х''И''Й''К''Л''М''Н''О''П''Э',
        
'Р''С''Т''У''Ю''В''Ш''Ы''Ч''З',' ');
    
$eng = array('a''b''c''d''e''f''g''h''i''j''k''l''m',
        
'n''o''p''e''r''s''t''u','yu''v''w''i''y''z'';''A''B',
        
'C''D''E''F''G''H''I''J''K''L''M''N''O''P''E''R',
        
'S''T''U','Yu''V''W''I''Y''Z','_');
    for (
$i 0$i count($array); $i++) {
        
$str .= str_replace($rus$eng$array[$i]);
    }
    return (
$str);

}
echo 
translit($text); 
Но,нужно некторые буквы,в транслите заменить,масив кривой,и некоторые буквы повторяються,например "И"и "Ы" заменяються одинаковыми символамИ,поэтому при ре-транслите,будут ошибки.Ну это уже сам дорабатывай,как ты хочеш чтобы заменяло.Вот этот вариант,у меня на никсах работает,а с обычным стр_репласе,без отдельных элемеентов масива - непашеьт,так же как у тебя.
 
Ответить с цитированием