/** * 將類似 \x30\x31\x32\x33\ 這類字符轉換成 10進制的字符串 * 過程: 以上為例 30,31,32,33 都是16進制 * 將他們先轉為10進制然后再用ascii碼來換成字符 * 再連接起來就是結果 * @param $x16 * @return null|string */ function ascii16toStr($x16){ if(!is_string($x16))return null; $charlist = explode('\x',$x16); $str = array(); foreach($charlist as $char){ if(empty($char))continue; $str[] = chr(hexdec($char)); } return implode($str); } /** * 將str 的每個字母 轉換成ascii 再轉成16進制 * 只支持英文 結果類似如下 * \x30\x31\x32\x33\ */ function strtoAscii16($str){ if(!is_string($str)) return null; $asciis = array(); for($i = 0 ; $i < strlen($str) ; $i++){ $asciis[] = '\x'.dechex(ord($str[$i])); } return implode($asciis); }