在AJAX调用中,有以下php代码:
$jsonOutput =
"{
id: "0",
name: "dauerreservierung",
startDate: new Date('".date("Y-m-d", strtotime('-100 year',
$today))."'),
endDate: new Date('".date("Y-m-d", strtotime('+20 year',
$today))."'),
"color": "#FF0000",
}";
我在使用这种语法时确实遇到了问题。那些斜杠在干什么?为什么"连接到斜杠?"?并且:这里是否创建了关联数组?
此变量不是数组,而是包含JSON对象的字符串。
在PHP中,如果要将引号放在字符串中,则必须使用对其进行转义
示例:
$my_life = 'I'm eating an apple';
$json = "{"id": 1, "value": 42}";
你应该试着去echo $jsonOutput;
看看发生了什么
反斜杠((在PHP和JSON中都是一个特殊字符。这两种语言都使用它来转义字符串中的特殊字符,为了在字符串中正确地表示反斜杠,必须在PHP和JSON中为其加上另一个反斜杠。
有关更多详细信息,请参阅本PHP手册http://php.net/manual/en/language.types.string.php#language.types.string.syntax.single
并参考此StackOverflow链接。
如果您在PHP中使用此响应,请使用
json_decode(input_string)
从json 中获取(反斜杠(
如果您使用javascript消费,请使用
string.replace(/\//g, "/"); or JSON.parse(input_string)