Функция перевода текста в транслит

Готовая php-функция перевода кириллицы (русского) в транслит

 function translit($str) {
  $str = (string) $str; // преобразуем в строковое значение
  $str = strip_tags($str); // убираем HTML-теги
  $str = str_replace(array("\n", "\r"), " ", $str); // убираем перевод каретки
  $str = preg_replace("/\s+/", ' ', $str); // удаляем повторяющие пробелы
  $str = trim($str); // убираем пробелы в начале и конце строки
  $str = function_exists('mb_strtolower') ? mb_strtolower($str) : strtolower($str); // переводим строку в нижний регистр (иногда надо задать локаль)
  $ABC = array('а'=>'a','б'=>'b','в'=>'v','г'=>'g','д'=>'d','е'=>'e','ё'=>'e','ж'=>'j','з'=>'z','и'=>'i',
  'й'=>'y','к'=>'k','л'=>'l','м'=>'m','н'=>'n','о'=>'o','п'=>'p','р'=>'r','с'=>'s','т'=>'t','у'=>'u',
  'ф'=>'f','х'=>'h','ц'=>'c','ч'=>'ch','ш'=>'sh','щ'=>'shch','ы'=>'y','э'=>'e','ю'=>'yu','я'=>'ya','ъ'=>'','ь'=>'');
  $str = strtr($str, $ABC); // перебираем весь алфавит
  $str = preg_replace("/[^0-9a-z-_ ]/i", "", $str); // очищаем строку от недопустимых символов
  $str = str_replace(" ", "-", $str); // заменяем пробелы знаком минус
  return $str; // возвращаем результат
} 

Пример работы

$str = „Функция перевода текста в транслит“;
tranStrlitText($str); //результат —  funkciya-perevoda-teksta-v-translit