public function push_message($v_uid = "", $uid = "", $type = 1,$message='')
    {
        $data['type'] = $type;
        $openid = $this->get_openid($v_uid);
        $body="";
        switch ($type) {
            case 1;
                $title = "评论通知";
                $data['time'] = time();
                $data['data'] = $message;
                $data['user_data'] = get_user_info($uid, 'uid,head_img,nickname');
              //  print_r($data['user_data']);exit;
               $body = $data['user_data']['nickname'] . "回复了您";
                break;
            case 2;//系统推送
                $title='养生推送';
                break;
        }
        $data = json_encode($data);
        $this->pushMessageToSingle($openid, $data,0,$title,$body);
    }

    /**单推接口案例
     * @param $clientId
     * @param $data
     * @param int $type
     * @param $title
     * @param $body
     * @return Array
     */
    function pushMessageToSingle($clientId, $data, $type = 0, $title,$body)
    {
        //消息推送Demo
        header("Content-Type: text/html; charset=utf-8");
        define('HOST', 'http://sdk.open.api.igexin.com/apiex.htm');
        define('APPKEY', ?);
        define('APPID', ?);
        define('MASTERSECRET', ?);
        import('api.lib.GETUI.Push');
        //  define('CID','请输入您的CID')
        $igt = new \IGeTui(HOST, APPKEY, MASTERSECRET);
        $template = $this->IGtTransmissionTemplateDemo($data, $title,$body);
        // $template =$this->IGtNotyPopLoadTemplateDemo();
        //  print_r($data);die;
        //个推信息体
        $message = new \IGtSingleMessage();
        $message->set_isOffline(true);//是否离线
        $message->set_offlineExpireTime(3600 * 12 * 1000);//离线时间
        $message->set_data($template);//设置推送消息类型
        $message->set_PushNetWorkType($type);//设置是否根据WIFI推送消息,1为wifi推送,0为不限制推送
        //接收方
        $target = new \IGtTarget();
        $target->set_appId(APPID);
        $target->set_clientId($clientId);
        return $igt->pushMessageToSingle($message, $target);
    }



    function IGtTransmissionTemplateDemo($data, $title,$body)
    {
        $template = new \IGtTransmissionTemplate();
        $template->set_appId(APPID);//应用appid
        $template->set_appkey(APPKEY);//应用appkey
        $template->set_transmissionType(2);//透传消息类型
        $template->set_transmissionContent($data);//透传内容
        //$template->set_duration(BEGINTIME,ENDTIME); //设置ANDROID客户端在此时间区间内展示消息

// 如下有两个推送模版,一个简单一个高级,可以互相切换使用。此处以高级为例,所以把简单模版注释掉。
        //APN简单推送
//        $apn = new IGtAPNPayload();
//        $alertmsg=new SimpleAlertMsg();
//        $alertmsg->alertMsg="";
//        $apn->alertMsg=$alertmsg;
//      $apn->badge=2;
//      $apn->sound="";
//        $apn->add_customMsg("payload","payload");
//        $apn->contentAvailable=1;
//        $apn->category="ACTIONABLE";
//        $template->set_apnInfo($apn);

        //APN高级推送
        $apn = new \IGtAPNPayload();
        $alertmsg = new \DictionaryAlertMsg();
        $alertmsg->body = "body";
        $alertmsg->actionLocKey = "打开天天养生";
        $alertmsg->locKey = $body;
        $alertmsg->locArgs = array("locargs");
        $alertmsg->launchImage = "launchimage";
//        IOS8.2 支持
        $alertmsg->titleLocKey = $title;
        $alertmsg->titleLocArgs = array("TitleLocArg");

        $apn->alertMsg = $alertmsg;
        $apn->badge = 1;
        $apn->sound = "";
        $apn->add_customMsg("payload", $data);
//        $apn->contentAvailable=1;
        $apn->category = "ACTIONABLE";
        $template->set_apnInfo($apn);

        return $template;
    }

    /**
     * 返回c_id
     * @param $v_uid
     * @return array|mixed|null
     */
    private function get_openid($v_uid){
       return  M('member')->where(['uid'=>$v_uid])->getField('c_id');
    }