гм. странная функция.
а про strtolwer мы не слышали?
Для транслита могу предложить свою функцию.

PHP код:
function translit($str){
$t[а]="a";
$t[б]="b";
$t[в]="v";
$t[г]="g";
$t[д]="d";
$t[е]="e";
$t[ё]="yo";
$t[ж]="zh";
$t[з]="z";
$t[и]="i";
$t[й]="j";
$t[к]="k";
$t[л]="l";
$t[м]="m";
$t[н]="n";
$t[о]="o";
$t[п]="p";
$t[р]="r";
$t[с]="s";
$t[т]="t";
$t[у]="u";
$t[ф]="f";
$t[х]="kh";
$t[ц]="ts";
$t[ч]="tch";
$t[ш]="sh";
$t[щ]="tsh";
$t[ь]="";
$t[ы]="y";
$t[ъ]="";
$t[э]="e";
$t[ю]="yu";
$t[я]="ya";
$t[Ё]="Yo";
$new="";
for ($i=0; $i<strlen($str);$i++) {
$ch=$str[$i];
if("А"<=$ch and $ch<="Я"){
$ch=chr(ord($ch)+32);
$new.=$t[$ch];
}
elseif(("а"<=$ch and $ch<="я") or $ch=="ё" or $ch=="Ё" ){
$new.=$t[$ch];
}
elseif("A"<=$ch and $ch<="Z"){
$new.=chr(ord($ch)+32);
}
elseif(("a"<=$ch and $ch<="z") or ("0"<=$ch and $ch<="9")){
$new.=$ch;
}
}
return($new);
}