<?
$fileName = "网上连邦.url";
$fp = fopen($fileName, "r");
$connect = fread($fp, filesize($fileName));
fclose;echo $connect;
/*output:
[DEFAULT] BASEURL=http://www.federal.com.cn/ [DOC#622] BASEURL=http://www.federal.com.cn/include/cart2.asp?uid= ORIGURL=/include/cart2.asp?uid= [InternetShortcut] URL=http://www.federal.com.cn/ Modified=50430622858CC2018F 
*/
?>

解决方案 »

  1.   

    楼上的想错了吧,你把收藏夹导出看是不是如下样子:
    如何解析下面的html到一个变量中呢?key自定.
    ----------------------------------------------------
    <!DOCTYPE NETSCAPE-Book-file-1>
    <!-- This is an automatically generated file.
    It will be read and overwritten.
    Do Not Edit! -->
    <TITLE>Books</TITLE>
    <H1>Books</H1>
    <DL><p>
        <DT><H3 FOLDED ADD_DATE="1064990828">下载</H3>
        <DL><p>
            <DT><H3 FOLDED ADD_DATE="1064992390">下载1</H3>
            <DL><p>
            </DL><p>
            <DT><H3 FOLDED ADD_DATE="1064992468">下载2</H3>
            <DL><p>
                <DT><A HREF="http://search2.onlinedown.net/search.asp?page=30&keyword=e" ADD_DATE="1064396428" LAST_VISIT="1064992501" LAST_MODIFIED="1064396433">华军软件园-搜索引擎</A>
                <DT><A HREF="http://www.skyhits.com/02/news03/game_jindian.htm" ADD_DATE="1057718758" LAST_VISIT="1064992508" LAST_MODIFIED="1057718765">经典小游戏下载</A>
            </DL><p>
            <DT><H3 FOLDED ADD_DATE="1064992486">下载3</H3>
            <DL><p>
            </DL><p>
            <DT><A HREF="http://like.nease.net/lformat.htm" ADD_DATE="1057846802" LAST_VISIT="1064990937" LAST_MODIFIED="1057846807"> □ 低格软件下载</A>
            <DT><A HREF="http://www.microsoft.com/downloads/search.aspx?displaylang=zh-cn&categoryid=5" ADD_DATE="1059272335" LAST_VISIT="1064990915" LAST_MODIFIED="1059272352">Microsoft 下载中心:Macintosh & 其它平台</A>
            <DT><A HREF="http://bbs.bird365.com/cgi-bin/topic.cgi?forum=2&topic=1456&show=0" ADD_DATE="1060831422" LAST_VISIT="1064990882" LAST_MODIFIED="1060831445">影视下载 ---『 影视共享区 』 - ★★★8月14日全部测试可下电影,精彩奉献!★★★</A>
            <DT><A HREF="http://bbs.100bao.com/dispbbs.asp?boardID=3&ID=10120" ADD_DATE="1065091880" LAST_VISIT="1064990852" LAST_MODIFIED="1065091882">百宝论坛--[下载](10月1日修改)论坛ftp(我会及时换密码)</A>
            <DT><A HREF="http://www.52z.com/soft/781.html" ADD_DATE="1064297938" LAST_VISIT="1064990864" LAST_MODIFIED="1064297944">飞翔下载 = RedHat?linux?9.0?正式发布版 9.0</A>
        </DL><p>
        <DT><H3 FOLDED ADD_DATE="1064990996">手册</H3>
        <DL><p>
            <DT><A HREF="http://www.phpe.net/site_search.php?search=cache" ADD_DATE="1062146674" LAST_VISIT="1064991020" LAST_MODIFIED="1062146677">Exceed PHP - 超越PHP -- 站点搜索</A>
            <DT><A HREF="http://www.tisin.com/school/homepage/jscript/lesson/learn3/tech/js/stmt4.htm#1016007" ADD_DATE="1062377097" LAST_VISIT="1064991017" LAST_MODIFIED="1062377101">JavaScript语言参考手册_语句</A>
            <DT><A HREF="http://www.wy1997.com/sailflying/learn/paixu.htm" ADD_DATE="1064477075" LAST_VISIT="1064991012" LAST_MODIFIED="1064477087">XML卷之实战锦囊(1):动态排序</A>
            <DT><A HREF="http://art.yesky.com/" ADD_DATE="1063337628" LAST_VISIT="1064991044" LAST_MODIFIED="1063337634">天极-设计在线-美工教室</A>
        </DL><p>
        <DT><H3 FOLDED ADD_DATE="1064990951">电影</H3>
        <DL><p>
            <DT><A HREF="http://movie.59178.com/show.asp?id=7972" ADD_DATE="1060932158" LAST_VISIT="1064990969" LAST_MODIFIED="1060932166">在线电影,在线影院,免费电影,电影下载--绝代双骄,主要演员-苗侨伟 梁朝伟 关礼杰 刘美娟 黎美娴,电影海报,在线收看</A>
            <DT><A HREF="http://bbs.bird365.com/dispbbs.asp?boardID=2&ID=5" ADD_DATE="1061567203" LAST_VISIT="1064990977" LAST_MODIFIED="1061602524">布谷鸟综合论坛-娱乐时代-电影时代-浏览:风.语特供下载!8.23供应!</A>
        </DL><p>
        <DT><H3 FOLDED ADD_DATE="1064991052">论坛</H3>
        <DL><p>
            <DT><A HREF="http://expert.csdn.net/expert/forum.asp" ADD_DATE="1055987696" LAST_VISIT="1064991075" LAST_MODIFIED="1055987696">欢迎来到CSDN新版论坛</A>
        </DL><p>
        <DT><H3 FOLDED ADD_DATE="1055891971">链接</H3>
        <DL><p>
            <DT><A HREF="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=windowsmedia" ADD_DATE="1055892079" LAST_VISIT="1064991233" LAST_MODIFIED="1055892079">Windows Media</A>
            <DT><A HREF="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=windows" ADD_DATE="1055892079" LAST_VISIT="1064991233" LAST_MODIFIED="1055892079">Windows</A>
            <DT><A HREF="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=hotmail" ADD_DATE="1055892079" LAST_VISIT="1064991233" LAST_MODIFIED="1055892079">免费 Hotmail</A>
            <DT><A HREF="http://www.microsoft.com/isapi/redir.dll?prd=ie&pver=6&ar=CLinks" ADD_DATE="1055892079" LAST_VISIT="1064991233" LAST_MODIFIED="1055892079">自定义链接</A>
        </DL><p>
        <DT><A HREF="http://server/~yjj/forum/" ADD_DATE="1055912919" LAST_VISIT="1064990809" LAST_MODIFIED="1055912982">http--server-~yjj-forum-</A>
        <DT><A HREF="http://www.wfinfo.net.cn/" ADD_DATE="1058889954" LAST_VISIT="1064990810" LAST_MODIFIED="1058889955">http--wf-www.sd.cninfo.net-</A>
        <DT><A HREF="http://www.yangning.com/cgi-bin/topic.cgi?forum=1&topic=70&show=0" ADD_DATE="1064837339" LAST_VISIT="1064990831" LAST_MODIFIED="1064837345">『VC++编程软件工程 』 - 胡言乱语</A>
        <DT><A HREF="http://member.netease.com/~rchan/convlite_tiandown.html" ADD_DATE="1063015294" LAST_VISIT="1064990811" LAST_MODIFIED="1063015296">内码转换大师(ConvertLite) 安装及使用教程</A>
        <DT><A HREF="http://www2.yetibb.com/sms/main.asp" ADD_DATE="1063103581" LAST_VISIT="1064990811" LAST_MODIFIED="1063103584">宝宝短信在线 - sms.yetibb.com</A>
        <DT><A HREF="http://211.70.120.32:61/t2526/dw/19r.htm" ADD_DATE="1059268391" LAST_VISIT="1064990810" LAST_MODIFIED="1059268394">实战win2000-XP下本机调试ASP、CGI、PHP</A>
        <DT><A HREF="http://bingle.pku.edu.cn/" ADD_DATE="1058770645" LAST_VISIT="1064990810" LAST_MODIFIED="1058770647">欢迎访问北京大学天网FTP,WWW文件搜索引擎</A>
        <DT><A HREF="http://ayqfg.y365.com/loveexam4.htm" ADD_DATE="1061990038" LAST_VISIT="1064990811" LAST_MODIFIED="1061990042">爱情测验速算恋爱成功率</A>
        <DT><A HREF="http://www.yesky.com/20030312/1656569.shtml" ADD_DATE="1064829888" LAST_VISIT="1064990831" LAST_MODIFIED="1064829889">用VC把TXT文件转化成HTM文件</A>
        <DT><A HREF="http://mp3.baidu.com/wstsearch?tn=baidump3&ct=134217728&word=%B6%E9%C2%E4%CC%EC%CA%B9&lm=-1&pn=0" ADD_DATE="1059644384" LAST_VISIT="1064990810" LAST_MODIFIED="1059644385">百度MP3搜索_堕落天使</A>
        <DT><A HREF="http://www.59178.net/" ADD_DATE="1061920135" LAST_VISIT="1064990811" LAST_MODIFIED="1061920139">精彩网站网址之家</A>
        <DT><A HREF="http://expert.csdn.net/Expert/topic/2074/2074554.xml?temp=9.830874E-02" ADD_DATE="1059196619" LAST_VISIT="1064990810" LAST_MODIFIED="1059196822">谁能帮我写一个和自定义函数来统计注册会员总数的代码</A>
    </DL><p>
    ---------------------------------------------------------------------------------
      

  2.   

    具体规定一下, 大家帮我写一个类吧!test.php
    -------------------------------------------------------
    include_once "hy_favorite.class.php"; //这个文件是大家要帮我写的类,传入内容($content)
    $fp      = fopen('yjj1.htm', "r");
    $content = fread($fp, filesize('yjj1.htm')); //此文件的内容是上面的内容
    $hy_fa   = new hy_favorite($content); //新建类
    $data    = $hy_favorite->get(); //转化
    print "<pre>";
    print_r($data);
    print "</pre>";
    -----------------------------------------------------------类hy_favorite.class.php
    ----------------------------------------------------------
    class hy_favorite { var $content; function hy_favorite($content='')
    {
    $this->content = $content; } function get()
    {
    //谢谢帮忙,在这里写
    //$regs = preg_match_all("/<(.*)>.*<\/\1>/ig", $this->content, $regs);
    pre($regs);
    }}
    ----------------------------------------------------------
      

  3.   

    更正一下:去掉类中去掉pre($regs);
      

  4.   


      function get() {
    //谢谢帮忙,在这里写
    preg_match_all("/<(\w+)(.*)>(.*)<\/\\1>/iU", $this->content, $regs);
    return $regs;
      }
      

  5.   

    还没有解决~~
    get($aa)//get加上一个参数$aa,$aa可以是数组
    这个我想了一个笨方法用循环调用~~一行一行的解析~
      

  6.   

    function get($args) {
      if(is_array($args)) {
        froeach($args as $tag)
          $ar[] = $this->get($tag);
        return $ar;
      }else {
        preg_match_all("/<(".$args")(.*)>(.*)<\/\\1>/iU", $this->content, $regs);
        return $regs;
      }
    }
      

  7.   

    xuzuning(唠叨):你测试过了吗,你看是看是什么返回结果......
      

  8.   

    function get($args) {
      if(is_array($args)) {
        foreach($args as $tag)
          $ar[] = $this->get($tag);
        return $ar;
      }else {
        preg_match_all("/<(".$args.")(.*)>(.*)<\/\\1>/iU", $this->content, $regs);
        return $regs;
      }
    }
    哦,有两处写错了。
    这种错误自己改改就是了!
      

  9.   

    呵呵,我晕了n次~~我不说了这种错误呵~~
    能再写的完整一点吗,也许是我说的'解析'的意思,不是很完整,直接说解析后的生成结果吧~
    大家一起做呵,很好玩的问题呵~~
    生成结果是无限分级的变量,并不是一切都得出来,不分上下级,是哪一级的就在哪一个里那建一个sub子变量,存放这一级下的变量
      

  10.   

    看来你是不会分析preg_match_all的结果了,请先看看手册再说!
      

  11.   

    5555555555,能不能帮我写完整一点,:(,诚恳的...
    生成类似的就行,不用一样的:真诚的谢谢你坚持不懈的为我在解释:
    Array
    (
        [0] => Array
            (
                [tagName] => H3
                [Text] => >下载
                [Attrs] => Array
                    (
                        [FOLDED] => 
                        [ADD_DATE] => 1064990828
                    )            [sub] => Array
                    (
                        [0] => Array
                            (
                                [tagName] => H3
                                [Text] => >下载1
                                [Attrs] => Array
                                    (
                                        [FOLDED] => 
                                        [ADD_DATE] => 1064992390
                                    )                        )                    [1] => Array
                            (
                                [tagName] => H3
                                [Text] => >下载2
                                [Attrs] => Array
                                    (
                                        [FOLDED] => 
                                        [ADD_DATE] => 1064992468
                                    )                            [sub] => Array
                                    (
                                        [0] => Array
                                            (
                                                [tagName] => A
                                                [Text] => >华军软件园-搜索引擎
                                                [HREF] => http://search2.onlinedown.net/search.asp?page=30&keyword=e
                                                [ADD_DATE] => 1064396428
                                                [LAST_VISIT] => 1065660130
                                                [LAST_MODIFIED] => 1064396433
                                            )                                    [1] => Array
                                            (
                                                [tagName] => A
                                                [Text] => >经典小游戏下载
                                                [HREF] => http://www.skyhits.com/02/news03/game_jindian.htm
                                                [ADD_DATE] => 1057718758
                                                [LAST_VISIT] => 1065660130
                                                [LAST_MODIFIED] => 1057718765
                                            )                                )                        )                    [2] => Array
                            (
                                [tagName] => H3
                                [Text] => >下载3
                                [Attrs] => Array
                                    (
                                        [FOLDED] => 
                                        [ADD_DATE] => 1064992486
                                    )                        )                    [3] => Array
                            (
                                [tagName] => A
                                [Text] => > □ 低格软件下载
                                [Attrs] => Array
                                    (
                                        [HREF] => http://like.nease.net/lformat.htm
                                        [ADD_DATE] => 1057846802
                                        [LAST_VISIT] => 1065658414
                                        [LAST_MODIFIED] => 1057846807
                                    )                        )
    .
    .
    .
    .
    .
    .
      

  12.   

    过了一周了还得求这个程序代码.大家帮我.
    这是我写的一个,虽然能大体解出来,但算法太烂,不合格,贴出来,大家看看'运行结果':
    yjj1.htm文件在上面已经贴出来了,不再贴了.
    test.php
    ---------------------------------------------
    <?php
    function pre($array)
    {
    print "<pre>";
    print_r($array);
    print "</pre>";
    }
    function area($content)
    {
    $content = preg_replace("/\"/", "\\\"", $content);
    print print "<textarea name=aa rows=100 cols=100>$content</textarea>";
    }
    include "./favorite.class.php";
    $array= array(array('1','2'),array(3,4));
    $fp            = fopen('yjj1.htm', "r");
    $content       = fread($fp, filesize('yjj1.htm'));
    $hy_favorite   = new hy_favorite($content);
    $data          = $hy_favorite->get();
    pre($data);
    --------------------------------------------------------------------favorite.class.php
    --------------------------------------------------------------------
    <?php
    class hy_favorite { var $content = '';
    var $num     = 0; function hy_favorite($content='')
    {
    $this->content = $content;
    $this->num     = $num;
    } function get($dl_array = array())
    {
    $buffer = $dl_array;
    if (!$this->num) {
    $buffer = $this->content;
    $buffer = explode("\r\n", $buffer); 
    for ($i=0; $i<7; $i++) {
    unset($buffer[$i]);
    }
    }
    $flag      = 0;
    $flag_     = 0;
    $s         = 0;
    $flag_next = 0;
    $node      = 0;
    $s_array   = array();
    $current_dt_name  = '';
    foreach ($buffer as $key => $value) {
    if ($flag) {
    $s_array[$s][] = $value;
    $node = 1;
    }
    if (preg_match("/<DL>/", $value) && !$flag) {
    $this->s_array[$s][] = $value;
    $flag++;
    $flag_++;
    $node = 1;
    } else if (preg_match("/<DL>/", $value)) {
    $flag++;
    $flag_++;
    } if (preg_match("/<\/DL>/", $value)) {
    $flag--;
    $flag_next = 1;
    }
    if ($flag == 0 && $flag_next) {
    $s_array[$s]['dl_num'] = $flag_;
    $flag_                 = 0;
    $s++;
    }
    $flag_next = 0;

    if (!$node) {
    $s_array['no_dl'][] = $value;
    }
    $node = 0;
    }
    $s_bak = 0;
    foreach ($s_array as $key => $value) {
    if ($key && $key == 'no_dl') {
    $temp = '';
    foreach ($value as $key1 => $value1) {
    $tag    = "A";
    $tagkey = sql_regcase($tag);
    $buffer = eregi_replace("<$tagkey ","\n<$tag ",$value1);
    $ar     = split("\n",$buffer);
    foreach($ar as $v) {
    $p = array();
    if(! eregi("<$tagkey ",$v)) {
    continue;
    }
    eregi("<$tagkey ([^>]*)((.*)</$tagkey)?" ,$v ,$regs);
    $p['tagName'] = strtoupper($tag);
    if ($regs[3]) {
    $p['Text'] = substr($regs[3], 1);
    }
    $s = trim(eregi_replace("[ \t]+"," ",$regs[1]))." ";
    $s = eregi_replace(" *= *","=",$s); $a = split(" ",$s);
    for($i=0;$i<count($a);$i++) {
    $ch = array();
    if(eregi("=[\"']",$a[$i])) {
    $j = $i+1;
    while(!eregi("[\"']$",$a[$i])) {
    $a[$i] .= " ".$a[$j];
    unset($a[$j]);
    }
    }
    }
    foreach($a as $k) {
    $name = strtoupper(strtok($k,"="));
    $value = strtok("\0");
    if(eregi("^[\"']",$value))
    $value = substr($value,1,-1);
    if($name)
    $p['Attrs'][$name] = $value;
    }
    $pp[] = $p;
    } if (preg_match("/FOLDED/", $value1)) {
    $temp   = $value1;
    $tag    = "H3";
    $tagkey = sql_regcase($tag);
    $buffer = eregi_replace("<$tagkey ","\n<$tag ",$value1);
    $ar     = split("\n",$buffer);
    foreach($ar as $v) {
    $p1 = array();
    if(! eregi("<$tagkey ",$v)) {
    continue;
    }
    eregi("<$tagkey ([^>]*)((.*)</$tagkey)?" ,$v ,$regs);
    $p1['tagName'] = strtoupper($tag);
    if ($regs[3]) {
    $p1['Text'] = substr($regs[3], 1);
    }
    $s = trim(eregi_replace("[ \t]+"," ",$regs[1]))." ";
    $s = eregi_replace(" *= *","=",$s); $a = split(" ",$s);
    for($i=0;$i<count($a);$i++) {
    $ch = array();
    if(eregi("=[\"']",$a[$i])) {
    $j = $i+1;
    while(!eregi("[\"']$",$a[$i])) {
    $a[$i] .= " ".$a[$j];
    unset($a[$j]);
    }
    }
    }
    foreach($a as $k) {
    $name = strtoupper(strtok($k,"="));
    $value1 = strtok("\0");
    if(eregi("^[\"']",$value1))
    $value1 = substr($value1,1,-1);
    if($name)
    $p1['Attrs'][$name] = $value1;
    }
    }

    if (isset($s_array[$s_bak])) {
    if (isset($s_array[$s_bak]['dl_num']) && $s_array[$s_bak]['dl_num'] > 1) {
    $temp_num = count($s_array[$s_bak]);
    for ($i=0; $i<1; $i++) {
    if (preg_match("/<DL>/", $s_array[$s_bak][$i])) {
    unset($s_array[$s_bak][$i]);
    break;
    }
    }
    $num_ = $temp_num - 1;
    for ($i=$temp_num; $i>$num_; $i--) {
    if (preg_match("/<\/DL>/", $s_array[$s_bak][$i])) {
    unset($s_array[$s_bak][$i]);
    break;
    }
    }
    $this->num++;
    unset($s_array[$s_bak]['dl_num']);
    $p1['sub'] = $this->get($s_array[$s_bak]); } else {
    $p1_s = 0;
    foreach ($s_array[$s_bak] as $key2 => $value2) {
    $tag    = "A";
    $tagkey = sql_regcase($tag);
    $buffer = eregi_replace("<$tagkey ","\n<$tag ",$value2);
    $ar = split("\n",$buffer);
    foreach($ar as $v) { if(! eregi("<$tagkey ",$v)) {
    continue;
    }
    eregi("<$tagkey ([^>]*)((.*)</$tagkey)?" ,$v ,$regs);
    $p1['sub'][$p1_s]['tagName'] = strtoupper($tag);
    if ($regs[3]) {
    $p1['sub'][$p1_s]['Text'] = substr($regs[3], 1);
    }
    $s = trim(eregi_replace("[ \t]+"," ",$regs[1]))." ";
    $s = eregi_replace(" *= *","=",$s); $a = split(" ",$s);
    for($i=0;$i<count($a);$i++) {
    $ch = array();
    if(eregi("=[\"']",$a[$i])) {
    $j = $i+1;
    while(!eregi("[\"']$",$a[$i])) {
    $a[$i] .= " ".$a[$j];
    unset($a[$j]);
    }
    }
    }
    foreach($a as $k) {
    $name   = strtoupper(strtok($k,"="));
    $value2 = strtok("\0");
    if(eregi("^[\"']",$value2))
    $value2 = substr($value2,1,-1);
    if($name)
    $p1['sub'][$p1_s][$name] = $value2;
    }
    $p1_s++;
    }
    }
    }
    $s_bak++;
    }
    $pp[] = $p1;
    }
    }
    }
    }
    return $pp;
    }}
    ------------------------------------------------------------------------------