标题重写为:"PHP数组中的未定义变量"
P粉432930081
P粉432930081 2023-09-05 20:13:14
[PHP讨论组]

我试图使用php获取国家代码。我使用以下代码,但是得到了这个警告:

未定义的索引:country_code

function getIP($ip) {
    $curl = curl_init();

    curl_setopt_array($curl, array(
    CURLOPT_URL => "http://ipwho.is/".$ip,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "utf8",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "accept: application/json",
        "content-type: application/json"
    ),
    ));

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

    if ($err) {
    return "cURL Error #:" . $err;
    } else {
    return $response;
    }
}

function isIndo($ip) {
    $ip = getIP($ip);

    $info = json_decode($ip, true);
    //print_r($info);
    if( $info['country_code'] == "ID" ) {
        return true;
    } else {
        return false;
    }
}

哪里出错了?

P粉432930081
P粉432930081

全部回复(1)
P粉561749334

你尝试过isset()吗?

在访问数组键之前,请尝试检查它是否存在

if( isset($info['country_code']) && $info['country_code'] == "ID" ) {
    return true;
}

链接到isset()

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号