英文、數字、符號全型半型轉換。
範例:
//轉半型
echo changeStrType("Kill", "half");
//轉全型
echo changeStrType("Kill", "full");
結果:
Kill
Kill
參數說明:
$str 字串(單一個字或是多個文字)
$type 轉換全型(full)或半型(half)
//全型半型互轉有缺少的全型轉半轉對照字,請自行依數組加入陣列中。
function changeStrType ($str, $type = 'half')
{
//全型
$full = array(" ", " ", "-", "_", ".", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");
//半型
$half = array("", "", "-", "_", ".", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");
$str = str_split($str);
switch (strtolower($type)){
case "full":
//轉全型
$search = $half;
$replace = $full;
break;
case "half":
//轉半型
$search = $full;
$replace = $half;
break;
}
$tmp = "";
foreach ($str as $t){
$tmp .= str_replace($search, $replace, $t);
}
return $tmp;
}