note 29982 added to function.convert-cyr-string

From: Date: Mon, 03 Mar 2003 09:15:08 +0000
Subject: note 29982 added to function.convert-cyr-string
Groups: php.notes 
Request: Send a blank email to php-notes+get-44765@lists.php.net to get a copy of this message
// Here is a function that may be useful if you wish // to convert cyrillic text (windows-1251) to english // letters (e.g. for sending to a cell phone) function transliterate( $text ) { $cyrlet = 'ÀÁÂÃÄŨÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞß'. 'àáâãä叿çèéêëìíîïðñòóôõö÷øùúûüýþÿ'; $englet = 'ABVGD ZIJKLMNOPRSTUFHC YE '. 'abvgd zijklmnoprstufhc ye '; $result = ''; for ( $i=0; $i<strlen($text); $i++ ) { $c1 = $text[ $i ]; $p1 = strpos( $cyrlet, $c1 ); if ( $p1 === FALSE ) { $result .= $c1; continue; } $ct = $englet[ $p1 ]; if ( $ct != ' ' ) { $result .= $ct; continue; } switch ( $c1 ) { case 'Å': $ct = 'Je'; break; case 'å': $ct = 'e'; break; case '¨': $ct = 'Jo'; break; case '¸': $ct = 'jo'; break; case 'Æ': $ct = 'Zh'; break; case 'æ': $ct = 'zh'; break; case '×': $ct = 'Ch'; break; case '÷': $ct = 'ch'; break; case 'Ø': $ct = 'Sh'; break; case 'ø': $ct = 'sh'; break; case 'Ù': $ct = 'Sch'; break; case 'ù': $ct = 'sch'; break; case 'Þ': $ct = 'Ju'; break; case 'þ': $ct = 'ju'; break; case 'ß': $ct = 'Ja'; break; case 'ÿ': $ct = 'ja'; break; default: $ct = '?'; } $result .= $ct; } return $result; } // P.S. Thanks to PHP developers for rich and convenient // programming language! -- http://www.php.net/manual/en/function.convert-cyr-string.php http://master.php.net/manage/user-notes.php?action=edit+29982 http://master.php.net/manage/user-notes.php?action=delete+29982 http://master.php.net/manage/user-notes.php?action=reject+29982

« previous php.notes (#44765) next »