php request亂碼的解決方法:先開啟tomcat的server.xml;然後設定元素的屬性「URIEncoding=「UTF-8」」即可。
推薦:《PHP影片教學》
request、response 中文亂碼問題與解決方式
request亂碼指的是:瀏覽器向伺服器發送的請求參數中包含中文字符,伺服器取得到的請求參數的值是亂碼;
response亂碼指的是:伺服器傳送給瀏覽器的資料包含中文字符,瀏覽器中顯示的是亂碼;
亂碼產生的原因:不管是request亂碼還是response亂碼,其實都是因為客戶端(瀏覽器)跟伺服器端採用的編碼格式不一致所造成的。以request亂碼為例:瀏覽器向伺服器發送請求,因為瀏覽器與伺服器之間的通訊實質上是socket流,所以要先將請求參數(字元)轉換成字節,也就是編碼過程,伺服器接收到請求參數後進行解碼(位元組轉字元),然後封裝到request物件中。如果客戶端的編碼與伺服器端的解碼不統一,就會導致透過request取得到的請求參數的值是亂碼。
解決:
一、response亂碼
伺服器傳送給瀏覽器的資料預設是依照ISO-8859-1編碼,瀏覽器接收到資料後依照預設的字元集解碼後顯示,如果瀏覽器的預設解碼字元集不是ISO-8859-1,就出現亂碼。
對於response亂碼,只需要在伺服器端指定一個編碼字元集,然後通知瀏覽器按照這個字元集進行解碼就可以了。有三種方式:
1、A、設定伺服器端的編碼
response.setCharacterEncoding("utf-8”);
#預設是ISO-8859-1;該方法必須在response.getWriter()之前進行設定
B、通知瀏覽器伺服器發送的資料格式
response.setHeader("contentType", "text/html; charset=utf- 8”);
2、A、通知瀏覽器伺服器傳送的資料格式
response.setContentType("text/html;charset=utf-8”);
等同於response.setHeader("contentType", "text/html; charset=utf-8”);它其實會覆蓋response.setCharacterEncoding("utf-8”) ,在開發中只需要設
B、設定伺服器端的編碼
response.setContentType("text/html;charset=utf-8”);
3、A、設定伺服器端的編碼
response.setCharacterEncoding("utf-8”);
B、瀏覽器使用utf-8進行解碼
總結:設定:
A 、設定伺服器端的編碼
response.setCharacterEncoding("utf-8”);
B、通知瀏覽器伺服器發送的資料格式
response.setContentType("text /html;charset=utf-8”);
C、瀏覽器使用utf-8進行解碼
#本人是這樣設定的,以防萬一;
二、request亂碼
從瀏覽器發起的存取方式有三種:在網址列直接輸入URL存取、點擊頁面中的超連結存取、提交表單存取。第一種存取方式瀏覽器預設將參數依照utf-8編碼,後面兩種存取方式瀏覽器將參數依照目前頁面的顯示編碼進行編碼。所以對於request亂碼,只需要在伺服器端設定對應的解碼格式即可。由於存取方式不同,瀏覽器對參數的編碼格式也不同,為了方便處理,透過超連結和表單的存取也規定必須是utf-8格式,即顯示目前頁面的編碼也要使用utf-8,這樣瀏覽器將統一使用utf-8對參數進行編碼。
A、post方式
post方式屬於表單提交,參數存在於請求體中。
request.setCharacterEncoding("utf-8”)
B、get方式
get方式提交的參數會跟在請求行中的uri後邊,伺服器依照默認的iso-8859-1進行解碼,這時候解決亂碼有兩種辦法:
辦法一:修改伺服器端對uri參數的預設編碼
在tomcat的server.xml中,設定元素的屬性URIEncoding="UTF-8”即可。 (預設沒有設定此屬性)
例如: 注意:1、設定元素的屬性useBodyEncodingForURI=“true”,意思是請求體和uri使用相同的編碼格式。設定這兩個屬性,可以解決get方式的亂碼,又可以解決 post方式的亂碼。 2.透過修改server.xml指定伺服器對get和post統一依照utf-8解碼,要求tomcat管理下的所有web應用程式都要使用utf-8編碼,也就是所有的jsp、html頁面都使用utf-8編碼。
以上是如何解決php request 亂碼問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器