我有一个PHP Twig字体结尾,调用Python Flask API。 API完全按照我的预期做,因为ORM,DB,Objects和Json都将布尔值视为0-False和1-json中的True或true / false(布尔值为True False 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支持Boolean为什么Guzzle会经历转换它们的麻烦?
答案 0 :(得分:2)
通过注释,var_dump($obj['required'])
显示它等于false
,符合预期。
Twig将其强制转换为输出字符串,(string)false
导致空字符串""
。如果您希望它输出true
或false
:
{{ $obj['required'] ? 'true' : 'false' }}