您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何過濾php不可見字符,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
php過濾不可見字符的方法:首先創建一個PHP代碼示例文件;然后定義一個“filterNonPrintableChar”方法;接著通過isset、ord等函數實現過濾邏輯;最后通過“var_dump”輸出過濾結果即可。
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不可見字符就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。