I'm querying the database and then storing returned data to XML file with file_put_contents(). I'm wondering which way of invoking this function is better. Note that $data is large array and variable $rss can contain a big string in this case.
At first I implemented something like this:
foreach($data as $item)
{
$rss .= '<title>'.getTitle($item['id']).'</title>';
$rss .= '<data>'.getData($item['id']).'</data>.';
file_put_contents($this->fileRss, $rss);
unset($rss);
}
And then I changed above to:
foreach($data as $item)
{
$rss .= '<title>'.getTitle($item['id']).'</title>';
$rss .= '<data>'.getData($item['id']).'</data>.';
}
file_put_contents($this->fileRss, $rss);
Which way is better? Making a big, big variable $rss and then saving it or saving quite small variable every time? I'm not sure but I think IO operations are slower than memory operations so first way is better. Only problem may be memory limit.