PHP实现返回JSON和XML的类分享
2016-03-15 15:34
232 查看
PHP实现返回JSON和XML的类分享
<?phpclass Reponse{
//private $result = array('code'=null,'message'=null,'data'=>null);
/**
* @desc 返回JSON格式
* @param int $code
* @param string $message
* @param array $data
* return string
*/
public static function json($code,$message = null,$data = array()){
if(!is_numeric($code)){
return false;
}
$result = array(
'code'=>$code,
'message'=>$message,
'data'=>$data
);
return json_encode($result);
exit;
}
/**
* @desc 返回xml格式数据
* @parma int $code 状态码
* @param string $message 提示
* @param array $data 数据
* return string
*/
public static function xml($code,$message = '',$data = array()){
if(!is_numeric($code)){
return false;
}
$result = array(
'code'=>$code,
'message'=>$message,
'data'=>$data
);
$xml = '';
$xml .= "<?xml version='1.0' encoding='UTF-8'?>\n";
$xml .= "<root>\n";
$xml .= self::xmlEncode($result);
$xml .= "</root>";
header("Content-Type:text/xml");
echo $xml;
}
public static function xmlEncode($result){
$xml = $attr ='';
foreach($result as $key=>$val){
if(is_numeric($key)){
$attr = "id='{$key}'";
$key = "item{$key}";
}
$xml .= "<{$key} {$attr}>";
$xml .= is_array($val) ? self::xmlEncode($val) : $val;
$xml .= "</{$key}>\n";
}
return $xml;
}
}
$data = array(
'id'=>1,
'age'=>20,
'username'=>'tim',
'others'=>array(1,2,3),
);
Reponse::xml(200,'success',$data);
Reponse::json(200,'success',$data);
相关文章推荐
- PHp服务器环境搭建
- PHP 插入排序法
- PHP 选择排序法
- php模板引擎技术简单实现
- php正则表达式治疗结巴
- zend studio快捷键
- zend studio快捷键
- 9个比较实用的php代码片段
- PHP配置文件详解php.ini
- yii2.0-rules验证规则应用实例
- Laravel5中集成Jasig cas统一认证系统
- YII2.0中实现高级注册
- 整理mac上的php环境
- 常见邮箱配置smtp服务器
- Laravel使用Caching缓存数据减轻数据库查询压力的方法
- PHP sesion_start()或者session_regenerate_id()提示Cannot regenerate session id - headers already sent in
- PHP常用函数(收集)
- laravel的增删改查
- PHP学习--PHP中的单字母函数汇总
- php-fpm