thinkphp中$this->_get()函数的用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp中$this->_get()函数的用法相关的知识,希望对你有一定的参考价值。
我用tp中$this->_get函数来获取get参数,但是获取不到,但是也不报错,就一直卡在$this->_get函数的位置,后面就不运行,不知道为什么?
有的可以用这个接,有的不可以,例如:$this->$_get。Thinkphp是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。
ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。
ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持mysql、PgSQL、Sqlite以及PDO等多种数据库,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。
作为一个整体开发解决方案,ThinkPHP能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。 参考技术A $this->$_get[];是这样吧 参考技术B 有的可以用这个接,有的不可以 参考技术C TP有这个函数?哪个版本的?get和__get都有……
ThinkPHP tp Codeigniter ci 微信开发 控制器代码 示例 实例 模拟http请求 获取acces_token 创建自定义菜单 点击事件 转多客服
0
public function index(){ //echo $this->getAccessToken(); //$this->selectMenu(); //$this->creatMenu(); //$this->deleteMenu(); /* //用于验证的代码 勿动!! $tmpArr = array(‘xcjr2015‘, $_GET["timestamp"], $_GET["nonce"]); sort($tmpArr, SORT_STRING); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr != $_GET["signature"] ){ exit; }else{echo $_GET["echostr"];exit;} */ $postStr = file_get_contents("php://input"); if ( empty( $postStr ) ){ exit; } $postObj = simplexml_load_string($postStr, ‘SimpleXMLElement‘, LIBXML_NOCDATA); $to = $postObj->ToUserName; $from = $postObj->FromUserName; $openid = sprintf(‘%s‘,$postObj->FromUserName); $content = sprintf(‘%s‘,$postObj->Content); $textTpl= "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> </xml>"; $transferTpl=‘<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> </xml>‘; $news = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <ArticleCount>%s</ArticleCount> <Articles> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> </Articles> </xml>"; exit( sprintf( $textTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘], ‘text‘,$openid) ); //接收消息///////////////// switch($postObj->MsgType){ case ‘event‘: switch(sprintf(‘%s‘,$postObj->Event)){ case ‘LOCATION‘: break; case ‘subscribe‘: break; case ‘scancode_waitmsg‘: break; case "CLICK": switch ($postObj->EventKey) { case "service": //exit( sprintf( $textTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘], ‘text‘,$openid) ); //转到客服 $custom_url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=".$this->getAccessToken(); $customPostString = ‘{ "touser":"‘.$openid.‘", "msgtype":"text", "text": { "content":"正在接入...若客服不在请致电400-800-8957" } }‘; echo https_request($custom_url,$customPostString); exit( sprintf( $transferTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘],‘transfer_customer_service‘) ); case ‘one_login‘: break; default: $content = "点击菜单:".$postObj->EventKey; return $this->transmitText($postObj, $content); } break; }//switch(sprintf(‘%s‘,$postObj->Event))结束 break; case ‘text‘: switch ($content) { case "测试": exit( sprintf( $textTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘], ‘text‘,‘成功‘) ); case "kf": $custom_url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=".$this->getAccessToken(); $customPostString = ‘{ "touser":"‘.$openid.‘", "msgtype":"text", "text": { "content":"正常" } }‘; https_request($custom_url,$customPostString); break; default://转到客服 exit( sprintf( $transferTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘],‘transfer_customer_service‘) ); } default://转到客服 exit( sprintf( $transferTpl, $from, $to, $_SERVER[‘REQUEST_TIME‘],‘transfer_customer_service‘) ); }//switch结束 }//index//////////////////////////方法结束 public function creatMenu()//创建菜单 { $menuPostString = //构造POST给微信服务器的菜单结构体 ‘{ "button":[ { "name":"我的账号", "sub_button":[ { "type":"view", "name":"用户登录", "url":"http://www.econgfin.com/mobile/login.html" }, { "type":"view", "name":"用户注册", "url":"http://www.econgfin.com/mobile/reg.html" }, { "type":"view", "name":"立即投标", "url":"http://www.econgfin.com/mobile/borrow/blist.html" }] }, { "name":"关于e葱", "sub_button":[ { "type":"view", "name":"公司简介", "url":"http://www.econgfin.com/mobile/site/gsjs.html" }, { "type":"view", "name":"联系我们", "url":"http://www.econgfin.com/mobile/site/contact.html" }, { "type":"view", "name":"加入e葱", "url":"http://www.econgfin.com/mobile/site/zhaopin.html" }] }, { "type":"view", "name":"新手指引", "url":"http://www.econgfin.com/mobile/safes/index.html", }] }‘; $menuPostUrl = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$this->getAccessToken();//POST的url echo $this->https_request($menuPostUrl,$menuPostString); } public function deleteMenu(){//删除菜单 $MENU_URL="https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".$this->getAccessToken(); echo $this->https_request($MENU_URL); } public function selectMenu(){//菜单 $MENU_URL="https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".$this->getAccessToken(); echo $this->https_request($MENU_URL); } //获取Access Token/////// function getAccessToken() { //从mysql中获取access_token $query = $this->db->get(‘ych_token‘); $token = $query->row_array(); if(time() > ($token[‘last_time‘] + 7200)){ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx9b5736a2e8185044&secret=c4a5797a7e8843d14dc0278eb0013dd8"; $res = $this->https_request($url); $result = json_decode($res, true); $data[‘access_token‘] = $result["access_token"]; $data[‘last_time‘] = time(); $this->db->where(‘id‘,1); $this->db->update(‘ych_token‘,$data); return $result["access_token"]; } return $token["access_token"]; } //https请求(支持GET和POST)///////////// function https_request($url, $data = null) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; }
以上是关于thinkphp中$this->_get()函数的用法的主要内容,如果未能解决你的问题,请参考以下文章
thinkphp 中 this>assign( jumpURL , _URL_/index ); 是啥意思啊
ThinkPHP tp Codeigniter ci 微信开发 控制器代码 示例 实例 模拟http请求 获取acces_token 创建自定义菜单 点击事件 转多客服