Rumah > pembangunan bahagian belakang > tutorial php > php实现利用expat方式解析xml文件

php实现利用expat方式解析xml文件

王林
Lepaskan: 2023-04-08 07:10:01
ke hadapan
3082 orang telah melayarinya

php实现利用expat方式解析xml文件

本文实例讲述了php 使用expat方式解析xml文件操作。分享给大家供大家参考,具体如下:

test.xml:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<?xml version="1.0" encoding="UTF-8"?>

<notes>

 <note>

 <to>George</to>

 <from>John</from>

 <heading>Reminder</heading>

 <body>Don&#39;t forget the meeting!</body>

 </note>

 <note>

 <to>George2</to>

 <from>John2</from>

 <heading>Reminder2</heading>

 <body>Don&#39;t forget the meeting!2</body>

 </note>

 <instances>

 <instance st="192.168.234.121" />

 <instance st="192.168.234.28" />

 </instances>

</notes>

Salin selepas log masuk

PHP文件:(免费学习视频教程分享: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

<?php

// Initialize the XML parser

$parser = xml_parser_create();

// Function to use at the start of an element

function start($parser, $element_name, $element_attrs)

{

  switch ($element_name) {

    case "NOTE":

      echo "-- Note --<br />";

      break;

    case "TO":

      echo "To: ";

      break;

    case "FROM":

      echo "From: ";

      break;

    case "HEADING":

      echo "Heading: ";

      break;

    case "BODY":

      echo "Message: ";

  }

}

// Function to use at the end of an element

function stop($parser, $element_name)

{

  echo "<br />";

}

// Function to use when finding character data

function char($parser, $data)

{

  echo $data;

}

// Specify element handler

xml_set_element_handler($parser, "start", "stop");

// Specify data handler

xml_set_character_data_handler($parser, "char");

// Open XML file

// $fp = fopen("test.xml", "r");

// Read data

// while ($data = fread($fp, 10)) {

// xml_parse($parser, $data, feof($fp)) or die(sprintf("XML Error: %s at line %d", xml_error_string(

xml_get_error_code($parser)), xml_get_current_line_number($parser)));

// }

// fclose($fp);

$data = file_get_contents("test.xml");

xml_parse($parser, $data) or die(sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)),

xml_get_current_line_number($parser)));

// Free the XML parser

xml_parser_free($parser);

?>

Salin selepas log masuk

相关文章教程推荐:php教程

Atas ialah kandungan terperinci php实现利用expat方式解析xml文件. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan