json_encode后"\n"会变成"\\n"

使用json_encode后"\n"会变成"\\n"
原始数据 : 我爱学习\n
转换后数据:我爱学习\\n
json_encode 的第二个参数常量 ,我使用的是320,
JSON_UNESCAPED_SLASHES 64 + JSON_UNESCAPED_UNICODE  256

但是最终显示效果依然是 我爱学习\\n
开满天机
浏览 829回答 2
2回答

GCT1015

得看你想把\n当成换行符还是普通字符串,定义的时候用 "" 就是换行符,用 '' 就是普通字符串。 JSON 格式数据里,\n 为换行符"我爱学习\n" 里, \n 为换行符'我爱学习\n' 里, \n 就是一个普通字符串 所以,普通字符串\n变为 JSON 数据时要转义,避免被当成换行符 echo json_encode('chengqm\n').PHP_EOL; echo json_encode("chengqm\n").PHP_EOL; // 结果 // "chengqm\\n" // "chengqm\n"

FFIVE

你的问题应该是 单引号 双引号 字符串引起的 // 尝试下下面两个输出 echo json_encode('[\n]').PHP_EOL; // 输出 "[\\n]" echo json_encode("[\n]").PHP_EOL; // 输出 "[\n]"
打开App,查看更多内容
随时随地看视频慕课网APP