防止json_encode将空字符串编码为null。

3

PHP的json_encode函数是否可能不将空字符串值转换为null?

更新
在清晰的条件下,我无法复制这种行为,看起来这已经是该函数的默认行为了。


4
据我所见,它不会将空字符串转换为null。你有例子吗? - AbraCadaver
3
最好展示你的代码(在 Stack Overflow 上默认就应该这样做)。 - David Ferenczy Rogožan
一个人的 null 可能是另一个人的空字符串 empty?请展示代码。 - YvesLeBorg
是的,@DawidFerenczy 如果没有它,看起来意见分歧)) - vatavale
2个回答

3
这已经是默认行为了。
json_encode(['test' => '']);

生成:

{"test":""}

1
我不知道有没有这样的东西,但你可以这样做:

array_walk_recursive($value, function (&$item, $key) {
    $item = null === $item ? '' : $item;
});

是的,我也在这里看到过这种代码http://developertipsandtricks.blogspot.com/2013/10/convert-null-to-empty-string-for-json.html 而且它看起来像是一种心灵的日食,因为我现在无法在明确的条件下复制它)) 所以谢谢你,但是...我应该关闭这个问题吗? - vatavale

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接