我需要处理一个空的JSON请求,以防用户蠢事。
这是我的代码:
$JSON = file_get_contents($url);
//Puts the JSON var into a parameter that actually does the decoding into JSON
$data = json_decode($JSON,true);
echo $JSON;
if ($JSON === ''){
header("Location: contact2.php");
}else{
//Execute the original plan
}
这是一系列有趣的if语句,遗憾的是这些语句对我没用:
if(is_array($data))
if($JSON === null)
if($data === null)
非常感谢任何帮助。
答案 0 :(得分:0)
假设您使用的是PHP> = 5.3,您可以使用json_last_error
来确定解码是否成功:
if(json_last_error() === JSON_ERROR_NONE) {
// decoded fine
} else {
// error decoding json
}
答案 1 :(得分:0)
检查数组的empty
,请参阅链接
http://in3.php.net/empty
答案 2 :(得分:0)
使用gettype
if ( gettype(json_decode($data))=='NULL' ){
//error handler here
}