相关疑难解决方法(0)

JSON中的多行字符串

我正在用JSON格式编写一些数据文件,并希望将一些非常长的字符串值分成多行.使用python的JSON模块我得到了很多错误,无论是使用\还是\n作为转义.

是否可以在JSON中使用多行字符串?这主要是为了视觉上的舒适,所以我想我可以在我的编辑器中翻开自动换行,但我只是有点好奇......

string syntax json multiline

584
推荐指数
11
解决办法
56万
查看次数

为什么 JSON_UNESCAPED_LINE_TERMINATORS 没有转义我的换行符?

根据文档,我希望在编码 JSON 时JSON_UNESCAPED_LINE_TERMINATORS保留\n未转义的换行符 ( ) 字符,以便保留实际的换行符:

JSON_UNESCAPED_LINE_TERMINATORS(整数)行终止符在提供
时保持未转义。JSON_UNESCAPED_UNICODE它使用与 PHP 7.1 之前相同的行为,但没有此常量。从 PHP 7.1.0 开始可用。

最小的例子:

$ php -r 'echo json_encode(["foo" => "bar\nbaz"], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_LINE_TERMINATORS) . "\n";'
{"foo":"bar\nbaz"}
Run Code Online (Sandbox Code Playgroud)

我期望:

{"foo":"bar
baz"}
Run Code Online (Sandbox Code Playgroud)

(请注意,这是有效的 JSON;仅\" 必须在字符串中转义。)

为什么这个选项没有按预期工作?

php json

4
推荐指数
1
解决办法
1661
查看次数

标签 统计

json ×2

multiline ×1

php ×1

string ×1

syntax ×1