许多第三方公司强制我们使用非传统代码并生成非标准输出。
我们正在使用标准的json_encode()
函数在JS/HTML中输出JSON变量,看起来像:
"custom":{"1":2,"2":7,"3":5}
现在他们告诉我们这种方式对他们不起作用,他们需要这样做:
"custom":{"1":"2","2":"7","3":"5"}
可以强制PHP在数字周围加上引号吗?也许在编码之前构建对象时使用强制转换
(string)
?主要是,我们需要以下选项位标志的相反情况:JSON_NUMERIC_CHECK (integer)
。
但我怀疑这并不存在。Encodes numeric strings as numbers. Available since PHP 5.3.3.
json_encode()
把字符串转换回数字,参见 https://3v4l.org/YZS0F - Daniel W.array_map()
不通过引用修改。 - mickmackusa