首页 > php教程 > PHP源码 > 正文

使用PHP切割HTML页面DIV

PHP中文网
发布: 2016-05-25 17:10:29
原创
1216人浏览过

跳至

$pre_p){
            $ps[(int)$pre_p[1]] = 'p';
            $ps[(int)$suf_matches[0][$index][1]] = 's';    
        }
        
        //对p进行排序
        $sort = array_keys($ps);
        asort($sort);
        
        $count = count($pre_matches[0]);
        foreach($pre_matches[0] as $index=>$pre_p){
            //<p $hit <p+1    时p被命中
            if(($pre_matches[0][$index][1] < $hit) 
                && ($hit < $pre_matches[0][$index+1][1])){
                $deeper = 0;
                //弹出被命中p前的p
                while(array_shift($sort) != $pre_matches[0][$index][1] 
                    && ($count--)) continue;
                //对剩余p进行匹配,若下一个为前缀,则向下一层,$deeper加1,
                //否则后退一层,$deeper减1,$deeper为0则命中匹配,计算p长度
                foreach($sort as $key){
                    if($ps[$key] == 'p') $deeper++;
                    else if($deeper == 0) {
                        $length = $key-$pre_matches[0][$index][1];
                        break;
                    }else {
                        $deeper--;
                    }
                }
                $hitDivString = substr($data,$pre_matches[0][$index][1],$length).'';
                break;
            }
        }
        return $hitDivString;
    }
    //考虑到id单双引号符号问题,id="u"由用户自己填写。
    //声明:此段php只针对带 id p内容的读取。
    echo getWebDiv('id="taglist"','http://www.cnblogs.com/Zjmainstay/tag/');

//End_php
登录后复制

                       

           

2. [代码]完善:匹配任意闭合带id标签   

$pre_p){
            $ps[(int)$pre_p[1]] = 'p';
            $ps[(int)$suf_matches[0][$index][1]] = 's';    
        }
        
        //对p进行排序
        $sort = array_keys($ps);
        asort($sort);
        
        $count = count($pre_matches[0]);
        foreach($pre_matches[0] as $index=>$pre_p){
            //<p $hit <p+1    时p被命中
            if(($pre_matches[0][$index][1] < $hit) && ($hit < $pre_matches[0][$index+1][1])){
                $deeper = 0;
                //弹出被命中p前的p
                while(array_shift($sort) != $pre_matches[0][$index][1] && ($count--)) continue;
                //对剩余p进行匹配,若下一个为前缀,则向下一层,$deeper加1,
                //否则后退一层,$deeper减1,$deeper为0则命中匹配,计算p长度
                foreach($sort as $key){
                    if($ps[$key] == 'p') $deeper++;
                    else if($deeper == 0) {
                        $length = $key-$pre_matches[0][$index][1];
                        break;
                    }else {
                        $deeper--;
                    }
                }
                $hitDivString = substr($data,$pre_matches[0][$index][1],$length).'';
                break;
            }
        }
        return $hitDivString;
    }
    
    echo getWebTag('id="nav"','http://mail.163.com/html/mail_intro/','ul');
    echo getWebTag('id="homeBanners"','http://mail.163.com/html/mail_intro/');
    echo getWebTag('id="performance"','http://mail.163.com/html/mail_intro/','section');

//End_php
登录后复制

           

启科网络PHP商城系统
启科网络PHP商城系统

启科网络商城系统由启科网络技术开发团队完全自主开发,使用国内最流行高效的PHP程序语言,并用小巧的MySql作为数据库服务器,并且使用Smarty引擎来分离网站程序与前端设计代码,让建立的网站可以自由制作个性化的页面。 系统使用标签作为数据调用格式,网站前台开发人员只要简单学习系统标签功能和使用方法,将标签设置在制作的HTML模板中进行对网站数据、内容、信息等的调用,即可建设出美观、个性的网站。

启科网络PHP商城系统 0
查看详情 启科网络PHP商城系统

       

立即学习PHP免费学习笔记(深入)”;

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号