控制器里调用方法
<?php
namespace appadmincontroller;
use appadmincontrollerBase;
class Index extends Base
{
public function index(){
$data = [
'id'=>1,
'name'=>'haima',
'type'=>array(4,5,6),
'type3'=>array(4,5,6,array("a","c","e")),
];
// return Json('1','ok22',$data);
show(200,'ok',$data);
}
}
封装的common.php函数
/**
* ajax数据json数据返回
* @param [int] $code [结果码 0:正常 1:错误 /4**数据问题/5**服务器问题]
* @param [string] $msg [返回的提示信息]
* @param [array] $data [返回的数据]
* @return [string] [最终的json数据]
*/
function Json($code, $msg = '', $data = []) {
if(!is_numeric($code)) die('返回的code状态码必需是整型');
/*********** 组合数据 ***********/
$result = [
'code' => $code,
'msg' => $msg,
'data' => $data
];
/*********** 返回信息并终止脚本 ***********/
echo json_encode($result);die;
}
/**
* 作用:返回xml数据
*/
function xmlEncode($code,$msg,$data = [])
{
if(!is_numeric($code)) return '';
$result = [
'code' => $code,
'msg' => $msg,
'data' => $data
];
header("Content-Type: text/xml");
$xml = "<?xml version='1.0' encoding='UTF-8'?>
";
$xml .= "<root>
";
$xml .= xmlToEncde($data);
$xml.="</root>";
echo $xml;
}
function xmlToEncde($result)
{
$xml = $attr = "";
foreach ($result as $key=>$val)
{
if(is_numeric($key)){
$attr = " id='{$key}'";
$key = "item";
}
$xml .="<{$key}{$attr}>";
$xml .= is_array($val)?xmlToEncde($val):$val;
$xml .="</{$key}>
";
}
return $xml;
}
function dd($var)
{
echo '<pre>';
dump($var);
echo '</pre>';
die;
}
效果: