Fastest way to check if a string is JSON in PHP?

Kirk Ouimet picture Kirk Ouimet · May 18, 2011 · Viewed 374.7k times · Source

I need a really, really fast method of checking if a string is JSON or not. I feel like this is not the best way:

function isJson($string) {
    return ((is_string($string) &&
            (is_object(json_decode($string)) ||
            is_array(json_decode($string))))) ? true : false;
}

Any performance enthusiasts out there want to improve this method?

Answer

Henrik P. Hessel picture Henrik P. Hessel · May 18, 2011
function isJson($string) {
 json_decode($string);
 return (json_last_error() == JSON_ERROR_NONE);
}