本帖最后由 zhukai1 于 2011-05-13 17:41:03 编辑

解决方案 »

  1.   

    <?php$url = "http://www.baidu.com/";
    $fp = @fopen($url, "r") or die("超时");
    $fcontents = file_get_contents($url);
    $fcontents = str_replace("<title>.*<\/title>","<title>我的百度网</title>",$fcontents);echo $fcontents;?>
      

  2.   

    呵呵,看到标题有点吓一跳:
    PHP如何把其它网站的title替换成我自定义的title
    如果是这样,可以说不可能完成,除非把它的站点给黑了!如果是模拟,你改一个函数为:preg_replace即可,如下:<?php
    $url = "http://www.baidu.com/";
    $fp = @fopen($url, "r") or die("超时");
    $fcontents = file_get_contents($url);
    //ereg("(.*)",$fcontents,$rg);
    $rg[1]=preg_replace("/<title>(.*?)<\/title>/i","<title>我的百度网</title>",$fcontents); //这里怎么能替换成“我的百度网”,这里写的是错的,页面一直在加载echo $rg[1];
    ?>
      

  3.   

    //$fp = @fopen($url, "r") or die("超时");这个也注释了吧。多余了!
      

  4.   

    str_replace(); //这个里有中文就不行,英文就正常。如何解决?
      

  5.   

    <?php
    header("Content-type:text/html;charset=gb2312");
    $url = "http://www.baidu.com/";
    $fp = @fopen($url, "r") or die("超时");
    $fcontents = file_get_contents($url);
    //$ergs=/<title>[ \n\r\t]*<\/title>/g;
    $fcontents = ereg_replace ("<title>.*<\/title>","<title>我的百度网</title>",$fcontents);
    echo $fcontents;
    ?>
      

  6.   

    使用正则表达式 不要使用这个函数str_replace  用这个把ereg_replace;
    还有注意的一点就是你的 页面编码 ;我刚刚就是测试了很久 没测试出来 原来是页面编码的问题 ;使用ANSI编码吧;不要使用utf8 ;不然页面都不会显示;
      

  7.   

    $url = "http://www.baidu.com/";
    $fp = @fopen($url, "r") or die("超时");
    $fcontents = file_get_contents($url);
    //ereg("(.*)",$fcontents,$rg);
    $rg[1]=preg_replace("/<title>(.*?)<\/title>/i","<title>我的百度网</title>",$fcontents); //这里怎么能替换成“我的百度网”,这里写的是错的,页面一直在加载echo $rg[1];这个代码在我这里完全可以把标题替换为"我的百度网",自己认真看好代码再试一下吧。不要太粗心了。
      

  8.   

    问题解决了!我的PHP文件用UTF-8编码一次就能用了。
    str_replace();  //有中文也能用的
    谢谢大家了!