PHP編寫socket錯誤信息亂碼的解決辦法:首先對錯誤信息編碼進(jìn)行檢查,代碼為【mb_detect_encoding(socket_last_error($socket)】;然后將錯誤信息轉(zhuǎn)為【UTF-8】編碼;最后轉(zhuǎn)換輸出結(jié)果正常即可。
PHP編寫socket錯誤信息亂碼的解決辦法:
1、首先,通過以下代碼對錯誤信息的編碼進(jìn)行檢查
mb_detect_encoding(socket_last_error($socket))
結(jié)果輸出為ASCII。
2、通過第一步的檢查結(jié)果可知錯誤信息的編碼不是UTF-8,所以需要將錯誤信息轉(zhuǎn)為UTF-8編碼??赏ㄟ^以下函數(shù)實現(xiàn):
function doEncoding($str){ $encode = strtoupper(mb_detect_encoding($str, ["ASCII",'UTF-8',"GB2312","GBK",'BIG5'])); if($encode!='UTF-8'){ $str = mb_convert_encoding($str, 'UTF-8', $encode); } return $str; }
通過該代碼轉(zhuǎn)換之后輸出結(jié)果正常。