<?xml version='1.0' encoding='utf-8'?>
<bcaster autoPlayTime='5'>
<item item_url='up/1.jpg'  link='http://www.bubf.cn/1.html'></item>
<item item_url='up/2.jpg'  link='http://www.bubf.cn/2.html'></item>
<item item_url='up/3.jpg'  link='http://www.bubf.cn/3.html'></item>
<item item_url='up/4.jpg'  link='http://www.bubf.cn/4.html'></item>
</bcaster>
现在首页幻灯片新闻,图片路径是从上面的这个xml文件里读取出来,图片的链接也在后面
这个幻灯片源码我是从网上下载的,现在想在后台能操作这个xml文件
怎样修改link='http://www.bubf.cn/1.html'这个?
因为item是四条记录,有时可能只需要修改其中一条item的link值

解决方案 »

  1.   

    test.xml
    <?xml version='1.0' encoding='utf-8'?> <bcaster autoPlayTime='5'> <item item_url='up/1.jpg' link='http://www.bubf.cn/1.html'></item> <item item_url='up/2.jpg' link='http://www.bubf.cn/2.html'></item> <item item_url='up/3.jpg' link='http://www.bubf.cn/3.html'></item> <item item_url='up/4.jpg' link='http://www.bubf.cn/4.html'></item> </bcaster>
    测试OK,根据需要改
    <?php
    $xml = new DOMDocument();
    $xml->load('test.xml');//需要修改的项
    $item_url = 'up/1.jpg';
    //修改后的link值
    $link = 'new1';$items = $xml->getElementsByTagName('item');
    foreach ($items as $item) {
    if( $item->getAttribute('item_url') == $item_url ) {
    $item->setAttribute('link',$link);
    }
    }
    $xml->save('test.xml');
    ?>
      

  2.   

    上面的xml文件忘记加回车了,和lz你给的xml 的内容是一样的。
      

  3.   

    我只是给个代码思路,那个代码是只能修改一个,不过你稍微改一下就可以按照你的需要改了。
    比如把$item_url = 'up/1.jpg'; 改成$item_url = 'up/2.jpg';就是改第二个值了。
    如果你要全改的话多加几个if判定就行了。
      

  4.   

    那看你想怎么改了。如果link值改成统一的或者有规律的,那可以不用判断,直接在循环里面写几句代码就行
      

  5.   

    url值是没规律的哦,就这样吧,感谢了,加分