認識編碼的方法:1、Base64是網路上最常見的傳輸8Bit位元組碼的編碼方式之一,Base64就是一種基於64個可列印字元來表示二進位資料的方法; 2.【UTF-8】是針對Unicode的可變長度字元編碼,又稱萬國碼。
認識編碼的方法:
#編碼主要分為兩個部分
Base64是網路上最常見的用於傳輸8Bit字節碼的編碼方式之一,Base64就是一種基於64個可列印字元來表示二進位資料的方法。
UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字元編碼,又稱萬國碼。由Ken Thompson於1992年創立。現在已經標準化為RFC 3629。 UTF-8用1到6個位元組編碼Unicode字元。用在網頁上可以統一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。
utf-8是unicode的一種編碼方式(字元「我」unicode編碼後是\u6211 \u表示中文,6211是此字元在對照表中的二進位資料以十六進位展示) ,是對字符的表達,比如什麼樣的二進製表達什麼樣的字符,有對照表,base64是對二進制的編碼便於傳輸的,比如傳輸一張圖片啊就可以把圖片的二進制base64編碼,通過參數傳給其他接收者,不是同一個概念
UrlEncode 將需要轉碼的字元轉為16進制,然後從右到左,取4位(不足4位直接處理),每2位做一位,前面加上%,編碼成%XY格式。 (這裡也涉及到用什麼樣的編碼方式,一般utf-8,編碼方式決定轉成什麼樣的二進制,再經過urlencode轉為16進制,按規則加%) 編碼出的結果是更適合網絡傳輸和base64一樣,但是base64只負責對二進位編碼
urlencode編碼/urldecode解碼
將需要轉碼的字元轉為16進位(採用UTF-8或gb2312等unicode編碼對照表),然後從右到左,取4位(不足4位直接處理),每2位做一位,前面加上%,編碼成%XY格式。
例如:空格ASCII碼是32,對應16進位是20,那麼urlencode編碼結果是: ,但在新標準中空格對應的是,見RFC-1738
#例如:中ASCII碼是-10544,對應的16進位是FFFFFFFFFFFFD6D0,那麼urlencode編碼結果是:��
瀏覽器採用什麼編碼,伺服器回傳的時候告訴瀏覽器採用什麼編碼(response.setContentType( "text/html;charset=UTF-8");),瀏覽器在求請求的時候,也根據上一次返回的編碼方式,對本次請求的內容比如中文進行此編碼方式進行編碼
想了解更多程式設計學習,請關注php培訓欄位!
以上是如何認識編碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!