我有一个JSON编码的回复,但是当我解码它时,我在使用后丢失了true/ falseattributes $var = json_decode($response);.
这是一个例子:
{
"domain": "my.domain.com",
"created_at": "2014-11-15 00:26:53.74059",
"valid_mx": true
}
Run Code Online (Sandbox Code Playgroud)
我甚至尝试过:
$var = json_decode($response, true);
Run Code Online (Sandbox Code Playgroud)
但它似乎仍然下降true/ false.我怎样才能正确地从响应中拉出true/ false?我错过了什么?
你的问题是print_r,而不是json_decode.
print_r不显示true/ false为真/假.相反,它显示1/ (blank).
您可以使用var_dump($var);或var_export($var);代替它来显示正确的值.
这应该适合你:
(这样你就有了 JSON 字符串作为数组)
<?php
$response = '{
"domain": "my.domain.com",
"created_at": "2014-11-15 00:26:53.74059",
"valid_mx": true
}';
$var = json_decode($response, true);
if($var["valid_mx"] === TRUE)
echo "true";
else
echo "false";
?>
Run Code Online (Sandbox Code Playgroud)
输出:
yes
Run Code Online (Sandbox Code Playgroud)
如果你想要一个对象,只需更改这一行:
$var = json_decode($response, true);
Run Code Online (Sandbox Code Playgroud)
对此:
$var = json_decode($response);
Run Code Online (Sandbox Code Playgroud)
然后你可以使用以下行访问它:
if($var->valid_mx === TRUE)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4558 次 |
| 最近记录: |