Php 返回布尔值

Php 返回布尔值,php,curl,Php,Curl,我有下面的代码,它从API返回一系列结果,“”中的所有内容都可以工作,但是没有“”的布尔值不返回,我的代码中是否缺少一些内容 $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "URL", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10,

我有下面的代码,它从API返回一系列结果,“”中的所有内容都可以工作,但是没有“”的布尔值不返回,我的代码中是否缺少一些内容

$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_URL => "URL",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "authorization: KEY"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

$json_a2 = json_decode($response, true);
从API返回的是

"VehicleRegistration": {
        "DateOfLastUpdate": "2014-12-19T00:00:00",
        "Colour": "BLACK",
        "AbiBrokerNetCode": null,
        "EngineCapacity": "1598",
        "TransmissionCode": "M",
        "DtpMakeCode": "DF",
        "Exported": false,
        "YearOfManufacture": "2014",
        "WheelPlan": null,
        "DateExported": null,
        "Scrapped": false,
}

返回结果时,false不会显示。

false不会显示,因为php总是将布尔值false显示为空字符串

在PHP中,false、null、空字符串和0都将等于false

如果您需要检查您的var是否真的为false,而不是其他值,请使用:

$my_var === false;


注意三重等于

false
之后的尾随逗号使此JSON无效。你能准确地发布你从API中得到的信息吗?
false
true
不加引号是完全有效的。我的水晶球表明你已经解码了JSON,并尝试
回显
布尔值,这当然会将字符串转换为
'1'
'
(空字符串)因为PHP就是这样。使用
var\u dump($json\u a2)
查看返回的所有内容。
false === $my_var;