当前位置: 编程技术>php
php对包含html标签的字符串进行截取的函数分享
来源: 互联网 发布时间:2014-08-26
本文导语: 这个方法的作用是:php截取含有html标签的字符串,如果标签未闭合就闭合标签,防止未闭合的标签破坏原网页布局。截取完之后将多余的内容替换为...或者其他任意字符,支持锚点指定替换到指定位置。 /* * ====================...
这个方法的作用是:php截取含有html标签的字符串,如果标签未闭合就闭合标签,防止未闭合的标签破坏原网页布局。截取完之后将多余的内容替换为...或者其他任意字符,支持锚点指定替换到指定位置。
/* * ============================== 截取含有 html标签的字符串 ========================= * @param (string) $str 待截取字符串 * @param (int) $lenth 截取长度 * @param (string) $repalce 超出的内容用$repalce替换之(该参数可以为带有html标签的字符串) * @param (string) $anchor 截取锚点,如果截取过程中遇到这个标记锚点就截至该锚点处 * @return (string) $result 返回值 * @demo $res = cut_html_str($str, 256, '...'); //截取256个长度,其余部分用'...'替换 * ------------------------------------------------------------------------------- * $ Author: Wang Jian. | Email: wj@yurendu.com | Date: 2014/03/16 * =============================================================================== */ function cut_html_str($str, $lenth, $replace='', $anchor=''){ $_lenth = mb_strlen($str, "utf-8"); // 统计字符串长度(中、英文都算一个字符) if($_lenth array(), 'right' => array()); //记录截取后字符串内出现的 html 标签,开始=>left,结束=>right /* * 如字符串为:a,假设p未闭合,数组则为:array('left'=>array('h3','p','b'), 'right'=>'b','h3'); * 仅补全 html 标签,