Third party developers seeking an easy way to transliterate text or file names
46 may use transliteration functions as follows:
47
48 if (function_exists('transliteration_get')) {
49 $transliterated = transliteration_get($text, $unknown, $source_langcode);
50 }
51
52 or, in case of file names:
53
54 if (function_exists('transliteration_clean_filename')) {
55 $transliterated = transliteration_clean_filename($filename, $source_langcode);
56 }
57
58 Note that the optional $source_langcode parameter specifies the language code
59 of the input. If the source language is not known at the time of transliter-
60 ation, it is recommended to set this argument to the site default language:
61
62 $output = transliteration_get($text, '?', language_default('language'));
63
64 Otherwise the current display language will be used, which might produce
65 inconsistent results.
Комментарии
<?php function translit($text, $op = 'toEng', $errors = FALSE)
{
$ruEn = array(
"Ґ"=>"G","Ё"=>"YO","Є"=>"E","Ї"=>"YI","І"=>"I",
"і"=>"i","ґ"=>"g","ё"=>"yo","№"=>"#","є"=>"e",
"ї"=>"yi","А"=>"A","Б"=>"B","В"=>"V","Г"=>"G",
"Д"=>"D","Е"=>"E","Ж"=>"ZH","З"=>"Z","И"=>"I",
"Й"=>"Y","К"=>"K","Л"=>"L","М"=>"M","Н"=>"N",
"О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T",
"У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"TS","Ч"=>"CH",
"Ш"=>"SH","Щ"=>"SCH","Ъ"=>"'","Ы"=>"YI","Ь"=>"",
"Э"=>"E","Ю"=>"YU","Я"=>"YA","а"=>"a","б"=>"b",
"в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"zh",
"з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
"м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
"с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
"ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"'",
"ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya"
);
if(empty(
$text))$error[] = 'Введите текст';
switch(
$op){
case
'toRu':$result = str_replace($ruEn, array_keys($ruEn), $text);
if(empty($result))
$error[] = 'Текст не был переведен(Eng => Rus)';
break;
case
'toEng':$result = str_replace(array_keys($ruEn), $ruEn, $text);
if(empty($result))
$error[] = 'Текст не был переведен(Rus => Eng)';
break;
default :
$error[] = "Комманды:$op Не существует. Введите сущ. комманду";break;
}
if(
$errors === TRUE && !empty($error))return $error;
elseif(!empty($result))
return $result;
else
return FALSE;
} ?>
Сам код писал?
Можно поставить модуль Transliteration и юзать его функции. Сам так делал.
извините, а где его функции можно посмотреть? искал - не нашел.
Разве по корявому русскому не видно xD. Писал для 6 ибо pathauto не нашел отдельной функции для транслита.
Её там и быть не должно
Искать надо в transliteration.module
transliteration_clean_filename
нашел
Third party developers seeking an easy way to transliterate text or file names
46 may use transliteration functions as follows:
47
48 if (function_exists('transliteration_get')) {
49 $transliterated = transliteration_get($text, $unknown, $source_langcode);
50 }
51
52 or, in case of file names:
53
54 if (function_exists('transliteration_clean_filename')) {
55 $transliterated = transliteration_clean_filename($filename, $source_langcode);
56 }
57
58 Note that the optional $source_langcode parameter specifies the language code
59 of the input. If the source language is not known at the time of transliter-
60 ation, it is recommended to set this argument to the site default language:
61
62 $output = transliteration_get($text, '?', language_default('language'));
63
64 Otherwise the current display language will be used, which might produce
65 inconsistent results.
Спасибо. Очень помогло. Какраз искал.