> preg_replace("|<item>.*?$file.*?</item>|si","",$contents)
> <news>
> <item>
> <title>fhh</title>
> <date>1060205191</date>
> <text>hhh</text>
> <file>xml/news/1060205191.xml</file>
> </item>
> <item>
> <title>fgjghjh</title>
> <date>1060205186</date>
> <text>fgjh</text>
> <file>xml/news/1060205186.xml</file>
> </item>
> <item>
> <title>fgjhh</title>
> <date>1060205182</date>
> <text>fghh</text>
> <file>xml/news/1060205182.xml</file>
> </item>
> </news>
Not sure if I understand you correct but
the way you wrote your replace pattern the result should be
<news></news>.
If you want just the file to be replaced you have to use something like
preg_replace("|<item>.*?($file).*?</item>|si",'\\1',$contents)
Regards
Stefan Langer
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php