我正在使用 cURL 来处理 POST 和检索页面。我注意到我试图发布数据以对其进行编码的网站,例如:
Data=%7B%22Data%22%3A%22%5B%7B%5C%22
如何在 PHP 中对其进行编码/解码?我找到了为我做这件事的网站,但我想自己学习如何做。
看看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);)