万国语言ascii码转换类下载 class.ascii.rar
时间:2008-01-03 来源:yueming
class.ascii.php源码如下:
?php
class ascii
{
function decode($str) {
preg_match_all("/(\d{2,5})/", $str,$a);
$a = $a[0];
foreach ($a as $dec){
if ($dec 128) {
$utf .= chr($dec);
} else if ($dec 2048) {
$utf .= chr(192 + (($dec - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
} else {
$utf .= chr(224 + (($dec - ($dec % 4096)) / 4096));
$utf .= chr(128 + ((($dec % 4096) - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
}
}
return $utf;
}
function encode($c){
$len = strlen($c);
$a = 0;
while ($a $len){
$ud = 0;
if (ord($c{$a})>=0 && ord($c{$a})=127){
$ud = ord($c{$a});
$a += 1;
}else if (ord($c{$a})>=192 && ord($c{$a})=223){
$ud = (ord($c{$a})-192)*64 + (ord($c{$a+1})-128);
$a += 2;
}else if (ord($c{$a})>=224 && ord($c{$a})=239){
$ud = (ord($c{$a})-224)*4096 + (ord($c{$a+1})-128)*64 + (ord($c{$a+2})-128);
$a += 3;
}else if (ord($c{$a})>=240 && ord($c{$a})=247){
$ud = (ord($c{$a})-240)*262144 + (ord($c{$a+1})-128)*4096 + (ord($c{$a+2})-128)*64 + (ord($c{$a+3})-128);
$a += 4;
}else if (ord($c{$a})>=248 && ord($c{$a})=251){
$ud = (ord($c{$a})-248)*16777216 + (ord($c{$a+1})-128)*262144 + (ord($c{$a+2})-128)*4096 + (ord($c{$a+3})-128)*64 + (ord($c{$a+4})-128);
$a += 5;
}else if (ord($c{$a})>=252 && ord($c{$a})=253){
$ud = (ord($c{$a})-252)*1073741824 + (ord($c{$a+1})-128)*16777216 + (ord($c{$a+2})-128)*262144 + (ord($c{$a+3})-128)*4096 + (ord($c{$a+4})-128)*64 + (ord($c{$a+5})-128);
$a += 6;
}else if (ord($c{$a})>=254 && ord($c{$a})=255){ //error
$ud = false;
}
$scill .= "&#$ud;";
}
return $scill;
}
}
header("Content-Type: text/html; charset=UTF-8");
if($_POST['str']){
$str = $_POST['str'];
}else {
$str ='中文:春节愉快!
港台:春節愉快!
英文:Happy Spring Festival!
韩国语:봄 축제는 행복하다!
日文:スプリング・フェスティバルは幸せである!
荷兰:Gelukkige Festival van de Lente!
德语:Glückliches Frühling Festival!
法语:Festival Heureux De Ressort !
希腊语:Το φεστιβάλ άνοιξη είναι ευτυχές!
意大利:Festival Felice Della Molla!
俄语:Счастливое Празднество Весны!
葡萄牙(巴西):O Festival da mola é feliz!
阿拉伯语:نابض مهرجان سعيدة!
西班牙语:El festival del resorte es feliz!
';
}
//echo '';
//$str= ascii::encode($str);
//echo $str;//."
";
//$str = ascii::decode($str);
//echo $str."
";
$str= ascii::encode($str);
echo str_replace(array(" "," "), array("
","\n"), $str);
?>
form action="" method="post" name="form1" target="_self" id="form1">
?php
echo ascii::encode('这是个完美的acsii转换类,此转换类不同于一般的依靠对照表来完成。acsii包含所有不同语言的字符集,请输入各国语言试试:(多国翻译:http://www.mutouyu.com/translation/)');
?>
div align="center">
textarea name="str" cols="100" rows="10">/textarea>
br />
input type="submit" name="Submit" value="submit" />
/div>
/form>
为了大家使用获取方便。我提供下载本文件。
文件:
class.ascii.rar
大小:
1KB
下载:
下载
有需要者。下载就是了。呵呵。。
?php
class ascii
{
function decode($str) {
preg_match_all("/(\d{2,5})/", $str,$a);
$a = $a[0];
foreach ($a as $dec){
if ($dec 128) {
$utf .= chr($dec);
} else if ($dec 2048) {
$utf .= chr(192 + (($dec - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
} else {
$utf .= chr(224 + (($dec - ($dec % 4096)) / 4096));
$utf .= chr(128 + ((($dec % 4096) - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
}
}
return $utf;
}
function encode($c){
$len = strlen($c);
$a = 0;
while ($a $len){
$ud = 0;
if (ord($c{$a})>=0 && ord($c{$a})=127){
$ud = ord($c{$a});
$a += 1;
}else if (ord($c{$a})>=192 && ord($c{$a})=223){
$ud = (ord($c{$a})-192)*64 + (ord($c{$a+1})-128);
$a += 2;
}else if (ord($c{$a})>=224 && ord($c{$a})=239){
$ud = (ord($c{$a})-224)*4096 + (ord($c{$a+1})-128)*64 + (ord($c{$a+2})-128);
$a += 3;
}else if (ord($c{$a})>=240 && ord($c{$a})=247){
$ud = (ord($c{$a})-240)*262144 + (ord($c{$a+1})-128)*4096 + (ord($c{$a+2})-128)*64 + (ord($c{$a+3})-128);
$a += 4;
}else if (ord($c{$a})>=248 && ord($c{$a})=251){
$ud = (ord($c{$a})-248)*16777216 + (ord($c{$a+1})-128)*262144 + (ord($c{$a+2})-128)*4096 + (ord($c{$a+3})-128)*64 + (ord($c{$a+4})-128);
$a += 5;
}else if (ord($c{$a})>=252 && ord($c{$a})=253){
$ud = (ord($c{$a})-252)*1073741824 + (ord($c{$a+1})-128)*16777216 + (ord($c{$a+2})-128)*262144 + (ord($c{$a+3})-128)*4096 + (ord($c{$a+4})-128)*64 + (ord($c{$a+5})-128);
$a += 6;
}else if (ord($c{$a})>=254 && ord($c{$a})=255){ //error
$ud = false;
}
$scill .= "&#$ud;";
}
return $scill;
}
}
header("Content-Type: text/html; charset=UTF-8");
if($_POST['str']){
$str = $_POST['str'];
}else {
$str ='中文:春节愉快!
港台:春節愉快!
英文:Happy Spring Festival!
韩国语:봄 축제는 행복하다!
日文:スプリング・フェスティバルは幸せである!
荷兰:Gelukkige Festival van de Lente!
德语:Glückliches Frühling Festival!
法语:Festival Heureux De Ressort !
希腊语:Το φεστιβάλ άνοιξη είναι ευτυχές!
意大利:Festival Felice Della Molla!
俄语:Счастливое Празднество Весны!
葡萄牙(巴西):O Festival da mola é feliz!
阿拉伯语:نابض مهرجان سعيدة!
西班牙语:El festival del resorte es feliz!
';
}
//echo '';
//$str= ascii::encode($str);
//echo $str;//."
";
//$str = ascii::decode($str);
//echo $str."
";
$str= ascii::encode($str);
echo str_replace(array(" "," "), array("
","\n"), $str);
?>
form action="" method="post" name="form1" target="_self" id="form1">
?php
echo ascii::encode('这是个完美的acsii转换类,此转换类不同于一般的依靠对照表来完成。acsii包含所有不同语言的字符集,请输入各国语言试试:(多国翻译:http://www.mutouyu.com/translation/)');
?>
div align="center">
textarea name="str" cols="100" rows="10">/textarea>
br />
input type="submit" name="Submit" value="submit" />
/div>
/form>
为了大家使用获取方便。我提供下载本文件。
文件:
class.ascii.rar
大小:
1KB
下载:
下载
有需要者。下载就是了。呵呵。。
相关阅读 更多 +