澳门新葡11599_www.11599.com_澳门新萄京娱乐11599平台

thinkphp 前后版本ajaxReturn方法的分别澳门新葡115

日期:2019-06-24编辑作者:澳门新萄京娱乐11599平台
$info='',$status=1,这两个是默认返回的

3.2版本的ajaxReturn 返回的直接就只有json的数据也不用做什么转化,直接就能用

有何不足谢谢大家提出,指点
$this->assign('code',200);
$this->assign('name','thinkphp');
$this->success('成功提示信息','跳转地址');
protected function ajaxReturn($data,$type='') {          if(empty($type)) $type  =   C('DEFAULT_AJAX_RETURN');          switch (strtoupper($type)){              case 'JSON' :                  // 返回JSON数据格式到客户端 包含状态信息                  header('Content-Type:application/json; charset=utf-8');                  exit(json_encode($data));              case 'XML'  :                  // 返回xml格式数据                  header('Content-Type:text/xml; charset=utf-8');                  exit(xml_encode($data));              case 'JSONP':                  // 返回JSON数据格式到客户端 包含状态信息                  header('Content-Type:application/json; charset=utf-8');                  $handler  =   isset($_GET[C('VAR_JSONP_HANDLER')]) ? $_GET[C('VAR_JSONP_HANDLER')] : C('DEFAULT_JSONP_HANDLER');                  exit($handler.'('.json_encode($data).');');                case 'EVAL' :                  // 返回可执行的js脚本                  header('Content-Type:text/html; charset=utf-8');                  exit($data);                          default     :                  // 用于扩展其他返回格式数据                  Hook::listen('ajax_return',$data);          }      }

但这种用法不再建议选拔了。

此前用的是thinkphp2的版本以往改到thinkphp3.2已上的本子,开采ajaxReturn那么些格局重回的数码不均等了,今后做下记录

您恐怕感兴趣的稿子:

  • ThinkPHP中ajax使用实例教程
  • ThinkPHP中采用ajax接收json数据的方法
  • ThinkPHP完结ajax仿官方网址寻觅功效实例
  • thinkphp中ajax与php响应进程详解
  • ThinkPHP管理Ajax重回的格局
  • ThinkPHP结合ajax、Mysql完结的客户端通讯效能代码示例
  • jquery ajax结合thinkphp的getjson实现跨域的法门
  • thinkphp中AJAX重临ajaxReturn()方法剖判
  • thinkPHP总结排名与分页呈现效果示例
  • thinkphp区间查询、总结查询与SQL直接询问实例分析
  • thinkphp浏览历史功能实现情势
  • thinkPHP ajax达成总括页面pv浏览量的措施

下边贴出来的是thinkphp3.2的ajaxReturn的代码

原先的ajaxReturn方法只好重临固定结构的多寡,包蕴data、status和info索引音信,假若急需扩充数额外的归来数据消息,只好通过ajaxAssign方法,而ThinkPHP3.1版本则革新了ajaxReturn方法本身,能够更好的辅助ajax数据扩大,比方:

末段2.0本子的ajaxReturn再次来到的是字符类的数量,小编用jQuery.parseJSON()那些艺术在前端将字符数据转载成json格式的,这么些数据还多带多个值

提及底回到给客户端的ajax数据信息是一个数组,包蕴name、code、info、status和url。

protected function ajaxReturn($data,$info='',$status=1,$type='')      {          // 保证AJAX返回后也能保存日志          if(C('LOG_RECORD')) Log::save();          $result  =  array();          $result['status']  =  $status;          $result['info'] =  $info;          $result['data'] = $data;          if(empty($type)) $type  =   C('DEFAULT_AJAX_RETURN');          if(strtoupper($type)=='JSON') {              // 返回JSON数据格式到客户端 包含状态信息              header("Content-Type:text/html; charset=utf-8");              exit(json_encode($result));          }elseif(strtoupper($type)=='XML'){              // 返回xml格式数据              header("Content-Type:text/xml; charset=utf-8");              exit(xml_encode($result));          }elseif(strtoupper($type)=='EVAL'){              // 返回可执行的js脚本              header("Content-Type:text/html; charset=utf-8");              exit($data);          }else{              // TODO 增加其它格式          }      }

依旧选择


$data['info'] = 'info';
$data['status'] = 1;
$data['data'] = $data;
$this->ajaxReturn($data);

thinkphp2的ajaxReturn的完毕原码

当今可以直接采纳常量IS_AJAX来推断是或不是AJAX格局呼吁,用来替代之前的Action类的isAjax方法,优势是能够在其余轮代理公司码里面举办决断。而Action类的error和success方法内置就帮忙对AJAX自动判别扶助。

3.success和error方法完善对ajax协理

data传值数组能够私行定义。
改良后的ajaxReturn方法也相称从前的写法,举个例子:

系统会自动把info和1四个参数并入$data数组中,等同于赋值

澳门葡京赌场 ,2.ajaxReturn方法完善

$this->ajaxReturn($data,'info',1);
$data['status'] = 1;
$data['info'] = '返回信息';
$data['data'] = '返回数据';
$data['url'] = 'URL地址';
$this->ajaxReturn($data);

1.判断AJAX方式革新

$data['code'] = 200;
$data['name'] = 'ThinkPHP';
$this->success('成功提示信息','跳转地址',$data);

ThinkPHP3.1版对AJAX的支撑特别圆满了,具身体表面今后:

若果是ajax格局下边,Action类的success和error方法都做了修正帮忙,那七个情势的参数会改换到ajaxReturn方法的data数据的info、status和url参数。还足以支撑传入其余的参数,有两种艺术支持ajax传值。以success方法为例,第一种格局是一向传入ajax数据

本文由澳门新葡11599发布于澳门新萄京娱乐11599平台,转载请注明出处:thinkphp 前后版本ajaxReturn方法的分别澳门新葡115

关键词: 澳门新葡11599

1 thinkPHP目录结构澳门新葡11599

MVC M - Model 模型 工作:负责数据的操作 V - View 视图(模板) 工作:负责前台页面显示 C - Controller 控制器(模块) 工...

详细>>

RHEL5.4下Cacti rrdtool Netsnmp流量与性能监测系统安装

近几来对MongoDB相比感兴趣,在Linux下安插了一套LAMP,想把MongoDB加进去,下边进入正题: 应公司新类型必要,那二日在...

详细>>

PHP中this,self,parent三个关键字澳门新葡11599

{一}PHP中this,self,parent的区分之一this篇 this,self,parent八个首要字从字面上相比好了然,分别是指那、本身、阿爸。    ...

详细>>

Linux下安装加密模块mcrypt技巧澳门新葡11599

(以下步骤均为自个儿实际操作,恐怕与您的装置格局有所差距,但作者会尽量化解困惑) 使用过Self service password来...

详细>>