php 切割html字符串,自动加上未结束的html标签
php切换html字符串的时候,就涉及到对html标签的切割,如果一个div只有开始,没有结束 当内容显示在文章中容易导致页面乱套。 br / 我辞职在家做我的网站的时候遇到了切割html字符串(
php切换html字符串的时候,就涉及到对html标签的切割,如果一个div只有开始,没有结束 当内容显示在文章中容易导致页面乱套。
我辞职在家做我的网站的时候遇到了切割html字符串(大家有时间帮我支持一下 易寻 http://www.yxsss.com)
我本来是像在网上搜索一个 但是都不理想
于是自己写了一个 简单 明了 感觉还好用 于是贴出来大家分享一下
我辞职在家做我的网站的时候遇到了切割html字符串(大家有时间帮我支持一下 易寻 http://www.yxsss.com)
我本来是像在网上搜索一个 但是都不理想
于是自己写了一个 简单 明了 感觉还好用 于是贴出来大家分享一下
/*截取html字符串 * @param $s 字符串 * @param $zi 长度 * @param $ne 没有结束符的html标签 */ function G_htmlcut($s,$zi,$ne=',br,hr,input,img,'){ $s=preg_replace('/\s{2,}/',' ',$s); $os=preg_split('/<[\S\s]+?>/',$s); preg_match_all('/<[\S\s]+?>/',$s,$or); $s=''; $tag=array(); foreach($os as $k => $v){ if($v!='' && $v!=' '){ $l=strlen($v); for($i=0;$i<$l;$i++){ if(ord($v[$i]) > 127){ $s.=$v[$i].$v[++$i].$v[++$i]; }else{ $s.=$v[$i]; } $zi--; if($zi < 1){ break 2; } } } preg_match('/<\/?([^\s>]+)[\s>]{1}/',$or[0][$k],$t); $s.=$or[0][$k]; if(strpos($ne,','.strtolower($t[1]).',')===false && $t[1]!='' && $t[1]!=' '){ $k=array_search('</'.$t[1].'>',$tag); if($k!==false){ unset($tag[$k]); }else{ array_unshift($tag,'</'.$t[1].'>'); } } } return $s.implode('',$tag); }
- 上一篇:使用内联框架的原型
- 下一篇:js的unicode的url编码和php转换
精彩图集
精彩文章