HTTP:retry我在使用(或任何其他方法)获取 JSON 文件时遇到一些问题。->body();当我执行此操作时,JSON 文件最终看起来如下图所示dd():我尝试使用 preg_replace 进行一些清理(但不太擅长正则表达式),似乎部分有效:preg_replace( "/\r|\n/", "", $data );因为 JSON 看起来像这样,所以不可能做到->json();它只是null在我然后dd()它时返回。我怎样才能正确地“清理”它,以便可以将结果作为普通的 JSON 文件进行访问?以下是文本输出(缺少换行符 (\n)):b"""{"devname":"Event Telt","devsn":"18940256","time":"14:54:53 2020-07-18","timeunix":"1595084093","synch":"1","ch1":{ "name":"Temp Dataskap", "unit":"°C", "aval":"19.1", "alarm":0},"ch2":{ "name":"Temp Rom", "unit":"°C", "aval":"17.4", "alarm":0},"ch3":{ "name":"Fukt Rom", "unit":"%RH", "aval":"77.0", "alarm":1},"ch4":{ "name":"Channel 4", "unit":"", "aval":"n/a", "alarm":0},"ch5":{ "name":"Channel 5", "unit":"", "aval":"n/a", "alarm":0}}"""
1 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
问题似乎是格式错误的 UTF-8 或其他问题
它是用这个简单的 oneliner 修复的:mb_convert_encoding($temps->body(), 'UTF-8', 'UTF-8')
。
转储中的特殊字符和奇怪的插件似乎是 Laravel 在dd()
谢谢大家的建议!
- 1 回答
- 0 关注
- 110 浏览
添加回答
举报
0/150
提交
取消