我是菜鸟,问个str_replace替换的问题
我想将我数据库中的'// www.baidu.com'(不包括引号)全部替换为空,我是这样写的:
$soft_content=str_replace('// www.baidu.com','',$rows['content']);
但为什么一个也没找到?数据库中明明有很多的
关键是两斜杠与网址中间有个空格,这是原数据库中的数据,所以必须让PHP完全匹配,替换为空,求救大哥大姐,我这样写不对吗?有没有更好的方法啊?

解决方案 »

  1.   

    拿'// www.baidu.com'这个串去数据库里搜索一下,看能找到记录吗.
    怀疑之间不只有一个空格
    $soft_content=preg_replace('/\/\/[\s]+www.baidu.com/i','',$rows['content']); 用这个来试试.
      

  2.   

    $soft_content=str_replace('\/\/ www.baidu.com','',$rows['content']); 
      

  3.   

    $rows['content']里的// www.baidu.com被替换了吗?
    我怀疑你没有update数据库,就像jake9826说的,update之前备份一下数据库
      

  4.   

    <?php
    include($_SERVER['DOCUMENT_ROOT'].'/include/config.php');
    $sql="select content,id from soft where id=".$_GET['id'];
    $rs=$db->execute($sql);
    while($rows=$db->fetch_array($rs)){
    $soft_content=preg_replace('/\/\/[\s]+www.baidu.com\i','',$rows['content']); 
    echo $soft_content;
    }
    $db->free_result($rs);
    ?>
      

  5.   

    '/\/\/[\s]+www.baidu.com\i'
    写错了
    '/\/\/[\s]+www.baidu.com/i'
      

  6.   

    我现在还没有替换数据库,用echo输出先看是否被替换,正常了就加更新语句了
      

  7.   

    jakey9826 能告诉我QQ吗,我能发个图让你看,帮帮我啊
      

  8.   

    preg_replace('|// www\.baidu\.com|','',$rows['content']);这回可以了
      

  9.   

    preg_replace('/\/\/\swww\.baidu\.com/','',$rows['content']);
    这个应该可以吧。
      

  10.   

    18# tonsh的正解,感谢所有关心我的人,放分!!!感谢,我愿为你们两胁插刀,赴汤倒火!