Guzzle json 布尔问题 false 为空白
Guzzle json Boolean issue false is blank
我有一个 PHP Twig 字体端调用 Python Flask API。 API 正在做我认为应该做的事情,因为 ORM、DB、对象和 Json 都将布尔值视为 json 中的 0 - False 和 1 - True 或 true/false( python 为真 为假 None)
查看发送的 JSON 字段,如 {"required": false, "data": "other"
就是这样(正确的 json)
然而,当 PHP Guzzle 中的响应像这样解析时:
$obj= json_decode($gResponse->getBody()->getContents(), TRUE);
obj['required']
的字段为空或{"required" => , "other" => "data"}
true
显然被翻译成 1
有没有办法让 Guzzle 正确遵循 json? json 支持布尔值,为什么 Guzzle 要费力地转换它们?
根据评论,var_dump($obj['required'])
显示它等于 false
,正如预期的那样。
Twig 将把它转换成一个字符串输出,(string)false
结果是一个空字符串 ""
。如果你想让它输出 true
或 false
:
{{ $obj['required'] ? 'true' : 'false' }}
我有一个 PHP Twig 字体端调用 Python Flask API。 API 正在做我认为应该做的事情,因为 ORM、DB、对象和 Json 都将布尔值视为 json 中的 0 - False 和 1 - True 或 true/false( python 为真 为假 None)
查看发送的 JSON 字段,如 {"required": false, "data": "other"
就是这样(正确的 json)
然而,当 PHP Guzzle 中的响应像这样解析时:
$obj= json_decode($gResponse->getBody()->getContents(), TRUE);
obj['required']
的字段为空或{"required" => , "other" => "data"}
true
显然被翻译成 1
有没有办法让 Guzzle 正确遵循 json? json 支持布尔值,为什么 Guzzle 要费力地转换它们?
根据评论,var_dump($obj['required'])
显示它等于 false
,正如预期的那样。
Twig 将把它转换成一个字符串输出,(string)false
结果是一个空字符串 ""
。如果你想让它输出 true
或 false
:
{{ $obj['required'] ? 'true' : 'false' }}