• PHP 获取天气


        /**
         * 获取天气
         */
        function get_tq () {
    
            //获取用户ip地址
            $ip = get_real_ip();
            // $ip = '123.125.71.38';
            //根据ip地址 获取用户所在城市
            $api_key = '8d6c8b8f3749aed6b1aff3aad6f40e37';           
            // 使用固定城市北京市
            $cityName = '北京市';
    
            //获取今天的日期
            $day = time_format(NOW_TIME, 'Y.m.d');
    
            if( $cityName ) {
                $tq_datas = S('site.widget.nav.tq.' . md5($cityName) . '.day.' . $day );
    
                if( false == $tq_datas ){
                    //根据城市名 获取天气情况
                    $tq_datas = @file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=" . urlencode($cityName) . "&output=json&ak=" . $api_key);
                    $tq_datas = json_decode( $tq_datas, true );
    
                    $tq_datas = $tq_datas ? $tq_datas : [];
                    S('site.widget.nav.tq.' . md5($cityName) . '.day.' . $day, $tq_datas );
                }
            }
    
            foreach( $tq_datas['results'][0]['weather_data'] as $key=>$val ) {
                $tiqi_name = '';
                $tiqi_name = explode( '/',$val['dayPictureUrl']);
                $tiqi_name = explode( '.', end( $tiqi_name))[0];
    
                $tq_lists[ $key ] = $val;
                $terminal = cookie('terminal');
    
                if( $terminal == 'wap') {
                    $tq_lists[ $key ]['ico'] = '/themes_wap/tainqi/' . $tiqi_name . ".png";
                } else {
                    $tq_lists[ $key ]['ico'] = '/themes/tainqi/' . $tiqi_name . ".png";
                }
            }
    
            $tq_lists[0]['cityName'] = $cityName;
            if ( $terminal == 'default' ) {
                $this->tq_lists = $tq_lists;
            } else {
                $this->tq_lists = $tq_lists[0];
            }
            
            $this->ajaxReturn([ 'status' => 1 , 'name' => $tq_lists ] );
        }
  • 相关阅读:
    gym-102307 D. Do Not Try This Problem
    AtCoder Beginner Contest 161 E
    Codeforces 1270E 构造+数学
    2019牛客暑期多校训练营(第七场)E 线段树+离散化区间
    codeforces 1272F dp+记录路径
    Focus相关点滴
    Command模式
    接口隔离原则(ISP)
    依赖倒置原则(DIP)
    Liskov替换原则(LSP)
  • 原文地址:https://www.cnblogs.com/ningjiabing/p/10558888.html
Copyright © 2020-2023  润新知