如何更正 PHP/JSON 语法错误


how can I correct php/json syntax error?

我可以用json/php重新调整它

exit('[{"name":"signup","state":"1","message":"this is a message"}]');

但不是这个:

$_SESSION["message"] = 'link: <a href="'.ROOT_URL.'/index.php?id='.$pid.'"> here </a>';
exit('[{"name":"signup","state":"1","message":"'.$_SESSION['message'].'"}]');

如何纠正?

JSON 使用双引号来封装字符串,您只需连接一个包含未转义双引号的字符串,这会破坏编码。

要确保正确封装和编码所有数据,请执行以下操作:

$data = [
  'name' => 'signup',
  'state' => '1',
  'message' => $_SESSION['message']
];
echo json_encode($data);
exit();

json_encode() 处理转义、编码、转换以及生成格式正确的 JSON 所需的任何其他内容。

如果您想要最简单的方法,请按照我的步骤操作。不要手动制作 JSON。

使用这个:

  1. 首先创建一个数组。
  2. 比使用json_encode.您将获得您的数据。正确。