簡體   English   中英

php file_get_contents編碼問題

[英]php file_get_contents encoding issue

我正在嘗試將SMS服務集成到我的網站中。 我需要使用名為“msg”(urlencoded)的參數進行HTTP調用。

目前,我正在構建整個URL,其中msg param是urlencoded(即$msg = urlencode($msg) ),我正在發送短信。

$msg = urlencode("Hello World");

雖然我在手機上收到的是“Hello + World”而不是“Hello World”。

那么file_get_contents有問題嗎?

另外,無論如何,我可以看到字符串“file_get_contents”最終發出?

嘗試使用rawurlencode()代替。

主要區別(盡管還有其他區別)是它將空格編碼為%20而不是+ 這很可能是您問題的根源。

我想是什么問題:

我正在使用http_build_query來創建查詢字符串,我正在向它傳遞urlencode 'd param。 因此它被編碼了兩次。

那么file_get_contents有問題嗎?

沒有。

另外,有什么辦法,我可以看到字符串file_get_contents最終發出?

是的,使用網絡嗅探器。

您需要在檢索數據后使用urldecode()然后顯示給用戶

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM