跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

PHP生成json和xml类型接口数据格式

php生成json和xml类型接口数据格式在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以xml或者json格式传输,本文将介绍如何使用php生成xml格式数据供第三方调用以及如何获取第三方提供的xml数据。

php生成接口通信数据?12立即学习“PHP免费学习笔记(深入)”;34567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192PHP 8.5.5PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。下载93/*** 生成接口数据格式*/class Response{/*** [show 按综合方式输出数据]* @param [int] $code [状态码]* @param [string] $message [提示信息]* @param array $data [数据]* @param [string] $type [类型]* @return [string] [返回值]*/public static function show($code, $message, $data = array(),$type = ''){if(!is_numeric($code)){return '';}$result = array('code' => $code,'message' => $message,'data' => $data);if($type == 'json'){return self::json($code, $message, $data);}elseif($type == 'xml'){return self::xml($code, $message, $data);}else{//TODO}}/*** [json 按json方式输出数据]* @param [int] $code [状态码]* @param [string] $message [提示信息]* @param [array] $data [数据]* @return [string] [返回值]*/public static function json($code, $message, $data = array()){if(!is_numeric($code)){return '';}$result = array('code' => $code,'message' => $message,'data' => $data);$result = json_encode($result);return $result;}/*** [xml 按xml格式生成数据]* @param [int] $code [状态码]* @param [string] $message [提示信息]* @param array $data [数据]* @return [string] [返回值]*/public static function xml($code, $message, $data = array()){if(!is_numeric($code)){return '';}$result = array('code' => $code,'message' => $message,'data' => $data);header("Content-Type:text/xml");$xml = "\n";$xml .= "\n";$xml .= self::xmlToEncode($data);$xml .= "";return $xml;}public static function xmlToEncode($data){$xml = '';foreach($data as $key => $value){if(is_numeric($key)){$attr = "id='{$key}'";$key = "item";}$xml .= "\n";$xml .= is_array($value) ? self::xmlToEncode($value) : "{$value}\n";$xml .= "{$key}>\n";}return $xml;}}//测试$grade = array("score" => array(70, 95, 70.0, 60, "70"), "name" => array("Zhang San", "Li Si", "Wang Wu", "Zhao Liu", "TianQi"));$response = new Response();$result = $response :: show(200,'success',$grade,'json');print_r($result);以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章