我有一个系统将所有数据作为 JSON 字符串发送和接收,因此必须将我需要发送给它的所有数据格式化为 JSON 字符串。
我使用 PHP POST 调用从表单接收值,然后使用这些值创建 JSON 格式的字符串。问题在于 NULL 值以及真值和假值。当这些值包含在 POST 值的字符串中时,它只是将其留空,但 JSON 将 NULL 值格式化为文本 null。
请参见下面的示例:
<?php
$null_value = null;
$json_string = '{"uid":0123465,"name":"John Smith","nullValue":'.$null_value.'}';
echo $json_string;
//output
{"uid":0123465,"name":"John Smith","nullValue":}
?>
但是,我需要的正确输出是:
$json_string = '{"uid":0123465,"name":"John Smith","nullValue":null}';
echo $json_string;
//output
{"uid":0123465,"name":"John Smith","nullValue":null}
?>
我的问题是,我怎样才能让 PHP 空值正确显示为 JSON 空值,而不是让它为空?有没有转换它们的方法?