Initializing the XML Expat Parser

9 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€95.97
List Price:  €134.37
You save:  €38.39
£79.79
List Price:  £111.71
You save:  £31.92
CA$140.31
List Price:  CA$196.44
You save:  CA$56.13
A$153.75
List Price:  A$215.26
You save:  A$61.51
S$134.64
List Price:  S$188.51
You save:  S$53.86
HK$778.36
List Price:  HK$1,089.74
You save:  HK$311.37
CHF 89.34
List Price:  CHF 125.09
You save:  CHF 35.74
NOK kr1,107.14
List Price:  NOK kr1,550.05
You save:  NOK kr442.90
DKK kr715.75
List Price:  DKK kr1,002.09
You save:  DKK kr286.33
NZ$171.37
List Price:  NZ$239.93
You save:  NZ$68.55
د.إ367.26
List Price:  د.إ514.18
You save:  د.إ146.92
৳11,945.63
List Price:  ৳16,724.36
You save:  ৳4,778.73
₹8,442.99
List Price:  ₹11,820.52
You save:  ₹3,377.53
RM446.75
List Price:  RM625.47
You save:  RM178.72
₦169,271.38
List Price:  ₦236,986.70
You save:  ₦67,715.32
₨27,777.22
List Price:  ₨38,889.22
You save:  ₨11,112
฿3,446.26
List Price:  ฿4,824.91
You save:  ฿1,378.64
₺3,454.90
List Price:  ₺4,837
You save:  ₺1,382.10
B$580.04
List Price:  B$812.08
You save:  B$232.04
R1,815.38
List Price:  R2,541.61
You save:  R726.22
Лв187.66
List Price:  Лв262.73
You save:  Лв75.07
₩140,436.95
List Price:  ₩196,617.35
You save:  ₩56,180.40
₪371.46
List Price:  ₪520.07
You save:  ₪148.60
₱5,893.31
List Price:  ₱8,250.87
You save:  ₱2,357.56
¥15,475.45
List Price:  ¥21,666.25
You save:  ¥6,190.80
MX$2,042.64
List Price:  MX$2,859.78
You save:  MX$817.14
QR364.56
List Price:  QR510.41
You save:  QR145.84
P1,367.06
List Price:  P1,913.94
You save:  P546.88
KSh12,945.58
List Price:  KSh18,124.33
You save:  KSh5,178.75
E£4,964.52
List Price:  E£6,950.52
You save:  E£1,986
ብር12,237.67
List Price:  ብር17,133.23
You save:  ብር4,895.55
Kz91,290.87
List Price:  Kz127,810.87
You save:  Kz36,520
CLP$97,782.75
List Price:  CLP$136,899.76
You save:  CLP$39,117.01
CN¥724.22
List Price:  CN¥1,013.94
You save:  CN¥289.72
RD$6,024.63
List Price:  RD$8,434.73
You save:  RD$2,410.09
DA13,426.15
List Price:  DA18,797.15
You save:  DA5,371
FJ$227.57
List Price:  FJ$318.61
You save:  FJ$91.03
Q771.64
List Price:  Q1,080.33
You save:  Q308.69
GY$20,913.50
List Price:  GY$29,279.73
You save:  GY$8,366.23
ISK kr13,962.80
List Price:  ISK kr19,548.48
You save:  ISK kr5,585.67
DH1,005.63
List Price:  DH1,407.93
You save:  DH402.29
L1,821.98
List Price:  L2,550.85
You save:  L728.86
ден5,904.20
List Price:  ден8,266.12
You save:  ден2,361.91
MOP$801.48
List Price:  MOP$1,122.11
You save:  MOP$320.62
N$1,812.81
List Price:  N$2,538.01
You save:  N$725.20
C$3,678.31
List Price:  C$5,149.78
You save:  C$1,471.47
रु13,500.25
List Price:  रु18,900.90
You save:  रु5,400.64
S/379.05
List Price:  S/530.69
You save:  S/151.63
K402.47
List Price:  K563.48
You save:  K161
SAR375.40
List Price:  SAR525.58
You save:  SAR150.17
ZK2,764.29
List Price:  ZK3,870.12
You save:  ZK1,105.82
L477.77
List Price:  L668.90
You save:  L191.12
Kč2,432.37
List Price:  Kč3,405.42
You save:  Kč973.04
Ft39,496.05
List Price:  Ft55,296.05
You save:  Ft15,800
SEK kr1,103.50
List Price:  SEK kr1,544.95
You save:  SEK kr441.44
ARS$100,363.46
List Price:  ARS$140,512.86
You save:  ARS$40,149.40
Bs690.75
List Price:  Bs967.07
You save:  Bs276.32
COP$438,931.09
List Price:  COP$614,521.09
You save:  COP$175,589.99
₡50,918.63
List Price:  ₡71,288.12
You save:  ₡20,369.49
L2,526.16
List Price:  L3,536.73
You save:  L1,010.56
₲780,388.98
List Price:  ₲1,092,575.79
You save:  ₲312,186.81
$U4,261.82
List Price:  $U5,966.72
You save:  $U1,704.90
zł416.31
List Price:  zł582.85
You save:  zł166.54
Already have an account? Log In

Transcript

Hello in this video we are going to cover initializing the XML export parser. So to initialize it we need to afterwards set up a few things arm you know how know the start of the actual overall you know file is the fat data you know no to to Django to simplify it To be fair, I'm literally gonna have the one note. So just so it's easier for me, the principle is the same and we'll get rid of the attribute as well. Okay, so yeah, we won't need to specify all this. So in our php file, first of all, we need to do dollar parser equals XML. So parser underscore create.

And now we need to, you know, have a function that we're going to use as a start of the element Once a function starts is going to be dollar is going to pass low pass in the pastor pass in the element name. And we'll add and also any Element Attributes. So we're going to set it up so he can take attributes but we're not going to be using them you can extend it as an extra test or you want to do a switch case and this will basically switch on element name. And we need to put your curly brace ROI so you put a case and the cases are literally going to be each tax and note to from heading and body See, just put note No, like so. And we're just gonna say, Echo. And we're gonna say Africa Strix?

No, so this is some, some formatting so we can see what's happening. And we're going to do a brake light tech, and then we're gonna do a break. Okay, so we just want to do this for many tags that we have, which I believe is four in total, including the root node. So 12345 year, that's a four, I'm going to say five, two from heading embodies a two from two wrong. And then and what, and let's just change this up as well. So actually, it's not the root node, we'll just do it like this.

So to From head in body. Okay, so next we need to create a function that's going to be used at the end of any particular element. And this is literally it's gonna echo a brake line tag for us, but you could have some other sort of formatting if you want to. So you need to pass in the parser or the elements name. Again, this is just in case we do some sort of check on the element later on which you can extend yourself, but we just want to do a simple echo break tag. Okay, so next what we want to do is a function that we want to use when we are basically finding character data.

And a function can be very simple you can extend them as you need to pass and data will say echo dollar data. Okay, so now tactic get to actually utilizing this stuff. So let's actually specify the handle so we just do XML on the soul sect on for element handler and this will specify these two methods. So first of all, we need to specify the parser and the methods of star doc and we specify the data handling either x amount or set underscore character data handler and specify the parser and The job. And we also need specify, you know this right here. So again, you can extend it if you want to before what we need.

This is more than adequate. Now let's actually open an XML file. So we'll say file equals F open. Remember, fo just literally get the contents of it, we aren't doing anything in terms of XML, but we'll be handling that using everything that we created, and what you'll see very soon. So F open, the file is in the same location. So example dot XML.

And the commission topic just reads that's all we need to do anything else. Now we want to read the data so while dollar data equals F lead, and dollar file, the one we read in and the man of character maximum and character, so 496 so that's just, you know, just you can extend But that should be more than enough for what we have. Now we wanted to say is XML on the score paths and dollar parser. dollar data. And we just need to do the end of the files and the file. And we specify the file so it doesn't keep going any longer than it has to and will what will actually please or die, and this will essentially print out a error.

So we'll do it as printer and say XML error occurred. Do I do dollar so we'll actually put the error here at line dollar deal Which will be specifying literally here. So we just put XML underscore error string. And we do XML in school get error code, specify the path. Now in to specify the line number for XML, so we'll get current line number, dollar parser. And there we go.

So it's a pretty big line. And last thing that we need to do is just release the parser from memory. So we need to freedom to do that simple XML underscore parser underscore three. Also, line 45. Okay, so it's saying Unexpected as printf on line 44. So let's have a look for XML path, dollar path, data and the file file and looking over to me or dye.

And the dye requires. This right here is a method. There we go. So it's got all the data from note to Yoda from Darth Vader, and then go to the body. Do you remember when I was a Jedi Padawan. So he's basically gone through the file, and it's got the actual data from each part of it and we've just formatted it like so.

That's how you initialize the x Mr. X pack parser you can do a lot more with it. So each time you know for the stopping, you might not want to do a brake line might want to do something else. You could, you know, make that dynamic. So that links in some other function, you could also change how the character is printed every character every lesson or the character. You want some sort of formatting around him. So maybe some sort of, you know, actual HTML formatting, you can do all of that.

Can't really do that with simple XML. So this is great for just more advanced XML data manipulation. That's it any questions, feel free to drop me a message. And as usual, I look forward to seeing you in the next video.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.