php中get方法的加號處理

 php中get方法的加號處理

1、網上搜的方法如下:

  1. 用 get 方法 , 參數裏有 “+” 時,要做處理,否則到後臺會變成空格 
  2.  
  3. 解決方案: 
  4.  
  5. 1 、改用 post 方法 ,ok 
  6.  
  7. 2 、在 js 裏用 url = encodeURI(encodeURI(XXX)) 
  8.  
  9. 3 、將參數裏的加號進行轉換 datadata = data.replace(/\+/g, “%2B”); 
  10.  
  11. (2,3步可以合爲一步 encodeURIComponent(encodeURIComponent(xxxx)) ) 
  12.  
  13. 4、 PHP接受使用 rawurldecode後臺再解碼一次, ok 

2、自己添加一種方法(替換方法),其實沒這麼麻煩,首先認識下base64的組成:

在MIME格式的電子郵件中,base64可以用來將binary的字節序列數據編碼成ASCII字符序列構成的文本。使用時,在傳輸編碼方式中指定base64。

使用的字符包括大小寫字母各26個,加上10個數字,和加號“+”,斜槓“/”,一共64個字符,等號“=”用來作爲後綴用途。

所以字符串base64後傳輸之前可以先把“+”號替換掉,用“_”,“|”等等都可以,然後另一個頁面接收的時候再替換過來即可(str_replace)。最後把替換之後的base64再解碼。ok

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章