0
我PHP的buildin的服務器上乳寧Laravel 5.3應用程序,並試圖進行以下請求:爲什麼PHP可以將%2B轉換爲空字符串而不是+?
api/people?sort=%2Bname
我希望%2B
將被轉換爲+
,但由於某些原因,它不會發生:
$request->input('sort') => " name"
可這樣的行爲可能與PHP的設置?
我PHP的buildin的服務器上乳寧Laravel 5.3應用程序,並試圖進行以下請求:爲什麼PHP可以將%2B轉換爲空字符串而不是+?
api/people?sort=%2Bname
我希望%2B
將被轉換爲+
,但由於某些原因,它不會發生:
$request->input('sort') => " name"
可這樣的行爲可能與PHP的設置?
似乎是一個PHP的事情,與測試:
print_r(rawurldecode($_SERVER['QUERY_STRING']));//Result:content=+name
和
print_r(urldecode($_SERVER['QUERY_STRING']));//Result:content= name
解決方法:
$result=array();
array_map(function($a) use (&$result){
$a=explode('=',$a);
$result[$a[0]]=$a[1];
},explode('&',rawurldecode($_SERVER['QUERY_STRING'])));
print_r($result);