title: PHP optimizing use of file_put_contents function
body: <p>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.</p>
  
  <p>At first I implemented something like this:</p>
  
  <pre><code>foreach($data as $item)
  {
      $rss .= '&lt;title&gt;'.getTitle($item['id']).'&lt;/title&gt;';
      $rss .= '&lt;data&gt;'.getData($item['id']).'&lt;/data&gt;.';
      file_put_contents($this-&gt;fileRss, $rss);
      unset($rss);
  }
  </code></pre>
  
  <p>And then I changed above to:</p>
  
  <pre><code>foreach($data as $item)
  {
      $rss .= '&lt;title&gt;'.getTitle($item['id']).'&lt;/title&gt;';
      $rss .= '&lt;data&gt;'.getData($item['id']).'&lt;/data&gt;.';
  }
  
  file_put_contents($this-&gt;fileRss, $rss);
  </code></pre>
  
  <p>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.</p>