Hello, in this video we are going to look at parsing an XML string. So it was going to look at parsing this right here, but in a variable that contains in string format. So what you want to do is, say XML data equals quotation marks, do it over multiple lines. And first of all, the first line in an XML file only needs to have like a doctype for XML equals 1.0. And encode in equals UTF, eight if you know that you need a slightly different doctype different code, then maybe for example, feel free to modify. Then after here is where the rest of the code would go.
So for copy paste it here and put a semicolon There we go. So we got the file. And now to actually parse it, we just do a port equals simple XML load string. And you specify the data flow XML data, then we are actually going to put or die. And if the base is gonna let us know still an error, error, creating objects object XML so we notice some sort of error and will literally just echo out dollar XML. So if you reload us, let's see what we got.
We got 123 again, and era mistake on the encoding a the possibility I did okay so I will click on the question mark XML version equals 1.0 encoding equals UTF dash eight. I look forward to me possible because on the first line yet because you will on the first time and messed it up Okay, so it's printed everything out term Janie remind reminder. And don't forget me this weekend. What we can also do instead of echoing it, we can do print underscore R and this is pretty cool. Watch this so fine print out the data. I'm all combinate the echo just printed out in the exact same form our case that printed out every little thing hasn't No, I'll try something else.
What do you guess the first character Ah, not one day for break in, or not the way that I wanted to. I wanted like this because it was literally pumping this out. And this is a configure we almost had HTML to display HTML. None of this, you know, these would appear so it's basically so really like HTML render. So let's have a look at it. It looks like with the echo.
And yeah, so the work and if we go to the print all you should basically give us a breakdown of everything and we can access it. Sorry. We want to do too. Okay. So If we just want to echo it out, we could echo dollar pass to whoops there you go to have been printed out Now, let me put it all on. There you go.
And if we wanted to access the body, we would just put body here body we get the body. So that is basically how you read in a simple XML file. But you know if It's already in a string. And actually one second. Hmm, let's actually handle some bearer error detection instead of this, make it a bit more elegant. So we're gonna say dollar cost, because this will return false if it doesn't pass you successfully.
So if this basically equals false false, that means it hasn't successfully called it. So we're going to echo failed to all XML. And we can just print out all of the arrows or have a cursor for each. So for each live XML, when the school gets errors, dollar error, so if you don't understand what we're doing, with the Feel free to have a look at that video. And it's gonna it's gonna it's gonna go after dollar error message I'm going to print out here, well there we go. Obviously otherwise else it is successful.
And this is where we will put all of this code right here. And if let's say our break it again by putting this on a separate line, we get all failed to pause XML Okay, so that means There were no XML errors specifically. So it only printed out that one with the word, he would pump it up to some other reason why. And yeah, so that's just a very simple example of some basic error handling, where I want you to do as an extra task and make this a bit more advanced, where you have more nested elements also have more maybe multiple notes, and basically loop through it. And we need to basically loop through it and figure out how to implement some sort of loop to go over all of your data, all of your notes. 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.