찾다
php教程php手册php的XML文件解释类应用实例

php的XML文件解释类应用实例

Jun 13, 2016 am 09:25 AM
phpxml애플리케이션문서~의친절한설명하다

php的XML文件解释类应用实例

 XMLParser.class.php类文件如下:

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

94

95

96

97

98

99

100

/** XML 文件分析类 

*  Date:  2013-02-01 

*  Author: fdipzone 

*  Ver:  1.0 

*  func: 

*  loadXmlFile($xmlfile)   读入xml文件输出Array 

*  loadXmlString($xmlstring) 读入xmlstring 输出Array 

*/ 

   

class XMLParser{ 

   

  /** 读取xml文件 

  * @param String $xmlfile 

  * @return Array 

  */ 

  public function loadXmlFile($xmlfile){ 

    // get xmlfile content 

    $xmlstring = file_exists($xmlfile)? file_get_contents($xmlfile) : ''; 

    // parser xml 

    list($flag, $data) = $this->parser($xmlstring); 

    return $this->response($flag, $data); 

  } 

   

  /** 读取xmlstring 

  * @param String $xmlstring 

  * @return Array 

  */ 

  public function loadXmlString($xmlstring){ 

    // parser xml 

    list($flag, $data) = $this->parser($xmlstring); 

    return $this->response($flag, $data); 

  } 

   

  /** 解释xml内容 

  * @param  String $xmlstring 

  * @return Array 

  */ 

  private function parser($xmlstring){ 

    $flag = false; 

    $data = array(); 

    // check xml format 

    if($this->checkXmlFormat($xmlstring)){ 

      $flag = true; 

      // xml to object 

      $data = simpleXML_load_string($xmlstring, 'SimpleXMLElement', LIBXML_NOCDATA); 

      // object to array 

      $this->objectToArray($data); 

    } 

    return array($flag, $data); 

  } 

   

  /** 检查xml格式是否正确 

  * @param String $xmlstring 

  * @return boolean 

  */ 

  private function checkXmlFormat($xmlstring){ 

    if($xmlstring==''){ 

      return false; 

    } 

    $xml_parser_obj = xml_parser_create(); 

   

    if(xml_parse_into_struct($xml_parser_obj, $xmlstring, $vals, $indexs)===1){ // 1:success 0:fail 

      return true; 

    }else{ 

      return false; 

    } 

  } 

   

  /** object 转 Array 

  * @param object $object 

  * @return Array 

  */ 

  private function objectToArray(&$object){ 

       

    $object = (array)$object; 

       

    foreach($object as $key => $value){ 

      if($value==''){ 

        $object[$key] = ""; 

      }else{ 

        if(is_object($value) || is_array($value)){ 

          $this->objectToArray($value); 

          $object[$key] = $value; 

        } 

      } 

    } 

  } 

   

  /** 输出返回 

  * @param boolean $flag true:false 

  * @param Array  $data 转换后的数据 

  * @return Array 

  */ 

  private function response($flag=false, $data=array()){ 

    return array($flag, $data); 

  } 

?>

Demo示例程序如下:

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

require "XMLParser.class.php"; 

   

$xmlfile = 'file.xml'; 

$xmlstring = ' 

 

1000 

 

100 

fdipzone 

1 

28 

 

'; 

echo '

'; 
            <p>$xml_parser = new XMLParser(); </p>
            <p>echo "response xmlfile\r\n"; </p>
            <p>list($flag, $xmldata) = $xml_parser->loadXmlFile($xmlfile); </p>
            <p>if($flag){ </p>
            <p>  print_r($xmldata); </p>
            <p>} </p>
            <p>echo "response xmlstring\r\n"; </p>
            <p>list($flag, $xmldata) = $xml_parser->loadXmlString($xmlstring); </p>
            <p>if($flag){ </p>
            <p>  print_r($xmldata); </p>
            <p>} </p>
            <p>echo '</p>
'; 

?>

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경