中文字元轉為HTML字元實體

Corwien發表於2019-02-16

在處理使用者提交的內容時,出現了這樣的問題,使用者提交上來的是經過實體化的內容,這樣我們在進行內容過濾判斷時就不好處理了,所以,需要將其轉為正常的中文。 通常字元實體是用在編碼轉換方面,比如,人家用日文的編碼瀏覽中文網站,如果網站不是UTF-8編碼,那麼就會亂碼,這個時候怎麼辦呢,比如網站是GB2312的編碼,我們可以使用如下程式碼把中文字元直接轉換問HTML字元實體,這樣就可以相容各種編碼了:

echo mb_convert_encoding (`大家好哈`, `HTML-ENTITIES`, `gb2312`);

此時,瀏覽器輸出“大家好哈”,但是檢視原始檔裡的程式碼卻是:

大家好哈

那想轉回來怎麼辦呢?其實不用的,瀏覽器自己會轉回來,如果非要問,怎麼轉回來,可以如下:

echo mb_convert_encoding (`大家好哈`, `gb2312`, `HTML-ENTITIES`); 

如果要轉換整個頁面,怎麼辦呢?不怕,只要在網頁頭部加上如下三句:

mb_internal_encoding(`你網站的編碼`); 
mb_http_output(`HTML-ENTITIES`); 
ob_start(`mb_output_handler`); 

原文地址: 中文字元轉為HTML字元實體

相關文章