php验证18位身份证,准到必须输入正确的身份证号,

/**
 * 验证18位身份证(计算方式在百度百科有)
 * @param  string $id 身份证
 * return boolean
 */
function check_identity($)
{
    $set = array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2);
    $ver = array('1','0','x','9','8','7','6','5','4','3','2');
    $arr = str_split($id);
    $sum = 0;
    for ($i = 0; $i < 17; $i++)
    {
        if (!is_numeric($arr[$i]))
        {
            $result['status'] = 0;
            $result['info'] = '请输入18位身份证号';
            return $result;
        }
        $sum += $arr[$i] * $set[$i];
    }
    $mod = $sum % 11;
    if (strcasecmp($ver[$mod],$arr[17]) != 0)
    {
           $result['status'] = 0;
        $result['info'] = '您的身份证号不符合中国公民,请检查';
        return $result;
    }
    return 1;
}