Reputation: 515
I want to filter my xml data by date using php
<xml>
<customer>
<cid>1</cid>
<amount_paid>1000</amount_paid>
<date>2012-01-10</date>
</customer>
<customer>
<cid>2</cid>
<amount_paid>3000</amount_paid>
<date>2012-01-10</date>
</customer>
<customer>
<cid>3</cid>
<amount_paid>1000</amount_paid>
<date>2012-01-05</date>
</customer>
<customer>
<cid>6</cid>
<amount_paid>7000</amount_paid>
<date>2012-01-21</date>
</customer>
</xml>
How can filter my xml by date? For example. I want get customers where date = "2012-01-10"
Upvotes: 0
Views: 2048
Reputation: 219804
<?php
$string = '<xml>
<customer>
<cid>1</cid>
<amount_paid>1000</amount_paid>
<date>2012-01-10</date>
</customer>
<customer>
<cid>2</cid>
<amount_paid>3000</amount_paid>
<date>2012-01-10</date>
</customer>
<customer>
<cid>3</cid>
<amount_paid>1000</amount_paid>
<date>2012-01-05</date>
</customer>
<customer>
<cid>6</cid>
<amount_paid>7000</amount_paid>
<date>2012-01-21</date>
</customer>
</xml>';
$xml = simplexml_load_string($string);
foreach ($xml->customer AS $customer)
{
if ($customer->date == '2012-01-10')
{
echo $customer->cid . "<br>\n";
echo $customer->amount_paid . "<br>\n";
}
}
Upvotes: 1