ajaxReturn是php内置办法吗
ajaxReturn没有是php内置办法,ajaxReturn是ThinkPHP中的Action类提供了ajaxReturn办法,用于AJAX挪用后前往数据给客户端,而且支持JSON、XML以及EVAL三种形式给客户端承受数据,经过设置装备摆设DEFAULT_AJAX_RETURN进行设置,默许设置装备摆设采纳JSON格局前往数据,正在抉择没有同的AJAX类库的时分能够应用没有同的形式前往数据。
ajaxReturn应用
要应用ThinkPHP的ajaxReturn办法前往数据的话,需求恪守肯定的前往数据的格局标准。ThinkPHP前往的数据格局包罗:
status 操作状态
info 提醒信息
data 前往数据
$this->ajaxReturn(前往数据,提醒信息,操作状态);
前往数据data能够支持字符串、数字以及数组、工具,前往客户真个时分依据没有同的前往格局进行编码后传输。假如是JSON格局,会主动编码成JSON字符串,假如是XML形式,会主动编码成XML字符串,假如是EVAL形式的话,只会输入字符串data数据,而且疏忽status以及info信息。
上面是一个简略的例子:
$User=M("User");//实例化User工具 $result = $User->add($data); if ($result){ //胜利后前往客户端新增的用户ID,并前往提醒信息以及操作状态 $this->ajaxReturn($result,"新增胜利!",1); }else{ //谬误后前往谬误的操作状态以及提醒信息 $this->ajaxReturn(0,"新增谬误!",0); }
$data['status'] = 1; $data['info'] = 'info'; $data['size'] = 9; $data['url'] = $url; $this->ajaxReturn($data,'JSON');
ajaxReturn源码
/** * Ajax形式前往数据到客户端 * @access protected * @param mixed $data 要前往的数据 * @param String $type AJAX前往数据格局 * @return void */ protected function ajaxReturn($data,$type='') { if(func_num_args()>2) {// 兼容3.0以前用法 $args = func_get_args(); array_shift($args); $info = array(); $info['data'] = $data; $info['info'] = array_shift($args); $info['status'] = array_shift($args); $data = $info; $type = $args?array_shift($args):''; } if(empty($type)) $type = C('DEFAULT_AJAX_RETURN'); if(strtoupper($type)=='JSON') { // 前往JSON数据格局到客户端 蕴含状态信息 header('Content-Type:text/html; charset=utf-8'); exit(json_encode($data)); }elseif(strtoupper($type)=='XML'){ // 前往xml格局数据 header('Content-Type:text/xml; charset=utf-8'); exit(xml_encode($data)); }elseif(strtoupper($type)=='EVAL'){ // 前往可执行的js剧本 header('Content-Type:text/html; charset=utf-8'); exit($data); }else{ // TODO 添加其它格局 } }
以上就是ajaxreturn是php内置办法吗的具体内容,更多请存眷资源魔其它相干文章!
标签: php php教程 php故障解决 php使用问题 ajaxreturn
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!