Can someone help me parse XML? - Challenge

From: Date: Mon, 17 Sep 2001 14:42:17 +0000
Subject: Can someone help me parse XML? - Challenge
Groups: php.general 
Request: Send a blank email to php-general+get-67607@lists.php.net to get a copy of this message
I have an XML file that I need to parse. I had the base of a perl script written but wasn't completely functioning and was hoping someone could give me a hand with making it parse and do what it's supposed to but in PHP. The perl file looked like this: #!/usr/bin/perl use CGI::Carp qw(fatalsToBrowser); $counter = 0; open (RESUME, "resumes.xml"); @resume = <RESUME>; close (RESUME); $resume = join('',@resume); while ($resume =~ /<resume>(.*?)<\/resume>/sg) { $counter += 1; $myresume = $1; $myresume =~ /<resumeText>(.*)<\/resumeText>/s; $finalresume = $1; $finalresume =~ s/\s+$//g; $finalresume =~ s/^\s+//g; $finalresume =~ s/\n/&&/g; $myresume =~ /<resumeHolderEntry(.*?)(\/)?>/s; $resumeholderentry = $1; parse($resumeholderentry,'resumeHolderEntry'); $myresume =~ /<resumeEntry(.*?)(\/)?>/s; $resumeentry = $1; parse($resumeentry,'resumeEntry'); } exit; sub parse { my ($what,$header) = @_; $what =~ s/\n//g; $what =~ s/^\s+//g; $what =~ s/\s+$//g; $what =~ s/\s{2}//g; $what =~ s/\"(.*?)\"/\"$1\"\n/g; @pairs = split(/\n/, $what); foreach $pair (@pairs) { ($name,$value) = split(/=/,$pair); $name =~ s/^\s+//g; $name =~ s/\s+$//g; $value =~ s/\"//g; $value =~ s/^\s+//g; $value =~ s/\s+$//g; #push(@temp, $name.'='.$value); push(@temp, $value); } $temp = join('|', @temp); if ($header eq "resumeEntry") { $temp .= "\|$finalresume"; } open (FILE, ">>$header.txt") or die "Can't write to $header: $!"; print FILE "$counter\|$temp\n"; close (FILE); } Now the XML file I can send someone but this is something I should have done from the start (use PHP) but now I am out of time and scrambling :(

« previous php.general (#67607) next »