json_encode的斜线问题为什么以及如何解决?

问题描述

在PHP 5.4中,可以使用JSON_UNESCAPED_SLASHES

echo json_encode("2011/7/11", JSON_UNESCAPED_SLASHES);

否则,您必须进行一些琐碎的后处理

str_replace('\\/', '/', json_encode("2011/7/11"));

请注意,这\/是表示/JSON 的有效方法。

解决方法

为什么("2011/7/11")json_encode显示器输出该日期("2011\/7\/11")

如何转换"2011\/7\/11""2011/7/11"

$data_go = '2011/7/11';
$ddmmyyy='([1-9][\d]{3})[- \/.]([0-1][\d])[- \/.]([0-3][\d])';
            if(preg_match("/$ddmmyyy$/",$data_go)) {
            $year = substr($data_go,4);
            $month = substr($data_go,5,2);
            $day = substr($data_go,8,2);
            $j2g = $this->convert_date->JalaliToGregorian($year,$month,$day);
             $ok = $j2g[0]."/".$j2g[1]."/".$j2g[2];
            }else {
              return FALSE;
            }
echo json_encode($ok); // output "2011\/7\/11"

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...