Home >Backend Development >PHP Tutorial >PHP generates json and xml type interface data format_PHP tutorial

PHP generates json and xml type interface data format_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:53:57883browse

PHP generates json and xml type interface data formats

When making data interfaces, we usually need to obtain third-party data interfaces or provide data interfaces to third parties, and these data formats It is usually transmitted in XML or JSON format. This article will introduce how to use PHP to generate XML format data for third-party calls and how to obtain XML data provided by third parties.

 PHP generates interface communication data

 ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

/**

* Generate interface data format

*/

class Response{

/**

* [show output data in comprehensive mode]

* @param [int] $code [status code]

* @param [string] $message [prompt message]

* @param array $data [data]

* @param [string] $type [type]

* @return [string] [return value]

*/

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 output data in json mode]

* @param [int] $code [status code]

* @param [string] $message [prompt message]

* @param [array] $data [data]

* @return [string] [return value]

*/

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 generates data in xml format]

* @param [int] $code [status code]

* @param [string] $message [prompt message]

* @param array $data [data]

* @return [string] [return value]

*/

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 .= "<{$key} {$attr}>n";

$xml .= is_array($value) ? self::xmlToEncode($value) : "{$value}n";

$xml .= "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);

  以上所述就是本文的全部内容了,希望大家能够喜欢。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1000063.htmlTechArticlePHP生成json和xml类型接口数据格式 在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn