When you run your document through strtolower, this is what ends up happening (remember, you're still passing around a string at this point, not a DOMDocument:
<freshvideos>
<video>
<id>
<![cdata[ 4f1a6a21e779d227eaff33de8f571f95 ]]>
</id>
<title>
<![cdata[ new england snowstorm - \"low gear\" ]]>
</title>
<ensub>
<![cdata[ i put it in low gear and take it slow. ]]>
</ensub>
<cnsub>
<![cdata[ 我挂了抵挡,慢慢开。 ]]>
</cnsub>
<filesrc>
<![cdata[ videos/new england snowstorm low gear.mp4 ]]>
</filesrc>
</video>
</freshvideos>
Your opening CDATA tag is no longer valid once it's been lower cased like that, so you're going to get weird results when trying to process your document as xml. A CDATA section must be delimited by a string matching <![CDATA[ ]]> and nothing else.