='5.0') ? array_combine($_tdatakey, $_tdatavalue) : $this->arr_combine($_tdatakey, $_tdatavalue);
arsort($_data);
reset($_data);
if($_code != 'gb2312') $_string = $this->u2_utf8_gb($_string);
$_res = '';
for($i=0; $i $_p = ord(substr($_string, $i, 1));
if($_p>160) { $_q = ord(substr($_string, ++$i, 1)); $_p = $_p*256 + $_q - 65536; }
$_res .= $this->pinyins($_p, $_data);
}
return $_res;
//return preg_replace(/[^a-z0-9]*/, '', $_res);
}
function pinyins($_num, $_data){
if ($_num>0 && $_num elseif($_num-10247) return '';
else {
foreach($_data as $k=>$v){ if($v return $k;
}
}
function u2_utf8_gb($_c){
$_string = '';
if($_c $_string .= $_c;
}elseif($_c $_string .= chr(0xc0 | $_c>>6);
$_string .= chr(0x80 | $_c & 0x3f);
}elseif($_c $_string .= chr(0xe0 | $_c>>12);
$_string .= chr(0x80 | $_c>>6 & 0x3f);
$_string .= chr(0x80 | $_c & 0x3f);
}elseif($_c $_string .= chr(0xf0 | $_c>>18);
$_string .= chr(0x80 | $_c>>12 & 0x3f);
$_string .= chr(0x80 | $_c>>6 & 0x3f);
$_string .= chr(0x80 | $_c & 0x3f);
}
return iconv('utf-8', 'gb2312', $_string);
}
function arr_combine($_arr1, $_arr2){
for($i=0; $i return $_res;
}
}
//用法:
//第二个参数留空则为gb1232编码
//第二个参数随意设置则为utf-8编码
$pin = new pin();
echo $pin->pinyin($strings,'utf8');
}
function p($arr){
echo
;
print_r($arr);
echo
;
}
?> ad:真正免费,域名+虚机+企业邮箱=0元
