php處理不可見字元的方法:首先建立一個PHP檔案;然後定義一個filterNonPrintableChar方法;接著在方法體內通過while語句實現過濾不可見字元的功能邏輯;最後執行該檔案即可。
php過濾不可見字元
編碼知識
ASCII碼為標準符號、數位、英文等進行了保留,取值範圍是0~127,還有一部分作為擴充套件ASCII碼128~255。當作業系統採用非ASCII編碼時(比如漢字編碼),一般用擴充套件ASCII碼來進行,約定用128~255範圍的編碼連續2~3甚至4個位元組來進行漢字編碼。
所以可以判斷ASCII碼十進位制值是否大於127來篩選出漢字。
php程式碼
<?php /** * @param $str * @return string * 過濾不可見字元,支援中文過濾 * 0至31和127這33個編碼是不可見的特殊字元(控制符) */ function filterNonPrintableChar($str) { $i = 0; $newStr = ''; while (isset($str[$i])) { $char = $str[$i]; $asc = ord($char); if ($asc > 31 && $asc < 127 || $asc > 127) { $newStr .= $char; } $i++; } return $newStr; } $str = chr(1) ."a3#2%1". chr(2) . chr(54) . "s哈哈ad~a好的s"; var_dump(filterNonPrintableChar($str)); $str = "「ASCII碼為標準符號、數位、英文等進行了保留,取值範圍是0~127,還有一部分作為擴充套件ASCII碼128~255當作業系統採用非ASCII編碼時(比如漢字編碼),一般用擴充套件ASCII碼來進行,約定用128~255範圍的編碼連續2~3甚至4個來進行...」"; var_dump(filterNonPrintableChar($str));
推薦:《PHP教學》
以上就是php怎麼處理不可見字元的詳細內容,更多請關注TW511.COM其它相關文章!