【发布时间】:2023-03-23 15:59:01
【问题描述】:
我收到这样的字符串:
result=OK&token=ABCD&url=http://www.example.com/shopping/vas?token=ABCD
我使用此代码对 url 进行编码:
curl_setopt($ch, CURLOPT_URL, "result=OK&token=ABCD&url=http://www.example.com/shopping/vas?token=ABCD");
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// $output contains the output string
$output = curl_exec($ch);
$raw = rawurldecode($output);
$pars = parse_url($raw);
parse_str($pars['query'],$result);
我已经看到使用函数parse_str() 无法获取&url= 之前的参数。我怎样才能得到response=OK?我需要它来了解我的网站是否可以继续进行操作。
正如有人问的那样,这是
var_dump($raw) -> string(112) "result=OK&token=330852&url=https://www.premiumline.eu/onshop/vas/login_mp?token=330852&acq=225583&track=12yy2333"
之前谢谢!
【问题讨论】:
-
问号可能会给你带来麻烦
-
那不是一个正确编码的查询字符串。您可以发布
var_dump的不同值($output、$raw等)吗? -
@jeroen 添加在原帖中!
-
你将不得不对 url= 部分之后的内容进行 url 编码
-
还有
$output?这很可能是您的问题所在。
标签: php curl parameters get encode