Read from a text file after a specific word

Posted on 16th Feb 2014 by admin

Hi all.

I have a text file that looks like the one below.
I know how to open the text file but I need to get the php pointer to take a value suck as $username. Once it finds $username, i need it to move to the next following MonthUp"> and then read the number after it and save it to the string $monthup. I will be doing the same for $monthdown and then closing the file.

Eg. If the value is $username, i need to find the first occurance of that username, find the number after MonthUp"> and read it to $monthup, then move to MonthDown"> and then read the number after it to $monthdown.
I will then use php to add the numbers together so that I can show the user when they enter their username into the website, how much they have used for the month.

I am just learning php and all I can find so far from google is reading line-by-line which i want to read after a specific word as I need to do this for a few different files and line by line wont work.


File - stats.cfg - can be renamed to stats.txt easily.
<config>
<list name="UserStats">
<listitem>
<variable name="Id">288A5772-2964-4701-9E66-765F3CECE522</variable>
<variable name="Name">all users</variable>
<variable name="DayUp">32729762</variable>
<variable name="DayDown">336451305</variable>
<variable name="WeekUp">982718994</variable>
<variable name="WeekDown">5711384480</variable>
<variable name="MonthUp">15542938381</variable>
<variable name="MonthDown">106022753555</variable>
<variable name="TotalUp">441879285577</variable>
<variable name="TotalDown">1763579705023</variable>
<variable name="Since">1210849661</variable>
<variable name="Timestamp">1256258234</variable>
<variable name="FullName">all users</variable>
</listitem>
<listitem>
<variable name="Id">807459fd-71a9-467d-bf0c-f0ce98fef937</variable>
<variable name="Name">Administrator</variable>
<variable name="DayUp">0</variable>
<variable name="DayDown">0</variable>
<variable name="WeekUp">0</variable>
<variable name="WeekDown">0</variable>
<variable name="MonthUp">0</variable>
<variable name="MonthDown">0</variable>
<variable name="TotalUp">995621942</variable>
<variable name="TotalDown">6089875753</variable>
<variable name="Since">1210849662</variable>
<variable name="Timestamp">1256224866</variable>
<variable name="FullName"></variable>
</listitem>
<listitem>
<variable name="Id">9cd97dd4-f902-4811-ad05-372658c8ec64</variable>
<variable name="Name">Mathew</variable>
<variable name="DayUp">0</variable>
<variable name="DayDown">0</variable>
<variable name="WeekUp">0</variable>
<variable name="WeekDown">0</variable>
<variable name="MonthUp">36809697</variable>
<variable name="MonthDown">565151504</variable>
<variable name="TotalUp">1739819196</variable>
<variable name="TotalDown">26628701150</variable>
<variable name="Since">1210849662</variable>
<variable name="Timestamp">1256257815</variable>
<variable name="FullName">mathew</variable>
</listitem>

Other forums