我正在使用cURL来处理POST和检索页面。我注意到我正在尝试POST数据以对其进行编码的网站,例如:
Data=%7B%22Data%22%3A%22%5B%7B%5C%22
如何在PHP中对此进行编码/解码?我发现网站为我做了这些,但我想学习如何自己做。
答案 0 :(得分:4)
查看urldecode()功能:
echo urldecode('Data=%7B%22Data%22%3A%22%5B%7B%5C%22'); // Data={"Data":"[{\"
urlencode()函数重新编码它(包括=符号):
echo urlencode('Data={"Data":"[{\"'); // Data%3D%7B%22Data%22%3A%22%5B%7B%5C%22
看起来你正在发送一个JSON字符串。您可以通过执行以下操作将其转换为更易于使用的格式:
$fields = parse_str('Data=%7B%22Data%22%3A%22%5B%7B%5C%22');
$data = $fields['Data']; //$data now contains the decoded JSON as a string
$array = json_decode($data); //parse the JSON into an associative array
var_dump($array); //see what it looks like (could also use print_r($array);)