<form>
<input type="text" name="goods_name" value="西瓜500g">
<input type="text" name="origin_url" value="https://www.baidu.com?page=50&since=2015">
<input type="text" name="price" value="10.0">
</form>
後端是透過file_get_content("php://input")接收的,請問如何解析完整的goods_name、origin_url、price這三個值?
網路上有個方案是透過explode以‘&’為節點進行切割,但是這樣做的話origin_url得到的是
“https://www.baidu.com?page=50”
也多出了個since字段,而不是完整的
“https://www.baidu.com?page=50&since=2015”
有木有大神知道有什麼方法能完整的解析出帶參數的url值?
迷茫2017-05-31 10:36:53
$queryString = parse_url($url, PHP_URL_QUERY);
parse_str($queryString, $params);
var_dump($params);
感謝樓下指出,好久沒用這倆函數了,忘記 parse_str
直接在參數裡接收回傳值了= =
曾经蜡笔没有小新2017-05-31 10:36:53
非常感謝,原始碼是這樣的,
$packData=urldecode(file_get_contents( "php://input" ));
parse_str($packData,$params);//parse_str函數是無傳回值的所以,$params = parse_str($queryString);是錯誤的寫法
//var_dump($param);