1. 程式人生 > >html_entity_decode()、空格、  亂碼問題

html_entity_decode()、空格、  亂碼問題

con 問題 之前 amp 編碼 多個 切換 顯示 style

普通 ASCII 碼空格為 32,但是瀏覽器會對普通空格進行自動歸並,也就是如果你輸入10個 0x20 的空格在HTML頁面裏面,可能會被合並成一個空格。

如果想要一致的呈現多個空格,就要用到  ,這個空格的編碼為 160,為西歐ISO-8859-1編碼標準。

為了讓經過HTML編碼的內容還原為原來的文本字符,可以使用 html_entity_decode() 方法,但這樣問題就來了,通常HTML編碼內容為UTF8格式的,
html_entity_decode()在瀏覽器UTF8編碼環境下會把
  轉為一個黑色四方形狀的亂碼。只有切換為ISO-8859-1才能正確顯示為空格。
所以在使用html_entity_decode()
之前,需要先把
  替換掉 str_replace(" ","",$str),這樣就可以避免亂碼問題。

html_entity_decode()、空格、  亂碼問題