PHP截取字符串,自动检查闭合html标签--Diaoyude,专注web开发!

站点首页Php-MysqlPHP截取字符串,自动检查闭合html标签

PHP截取字符串,自动检查闭合html标签

PHP截取字符串,自动检查闭合html标签

引入作者原话: 正确处理未闭合的 html 标签。但是如果使用 php 过滤器,就会比较麻烦,php 代码内可能会出现非常多的 < 和 >.....
这个代码对html的截取还是比较给力的,但是对php却
出现了很多<br>标签

  1. <?php
  2. /**
  3.  * 生成摘要
  4.  * @param (string) $body
  5.  *  正文
  6.  * @param (int) $size
  7.  *  摘要长度
  8.  * @param (int) $format
  9.  *  输入格式 id
  10.  */
  11. function blog_summary($body, $size, $format = NULL){
  12.   $_size = mb_strlen($body, 'utf-8');
  13.   if($_size <= $size) return $body;
  14.   // 输入格式中有 PHP 过滤器
  15.   if(!isset($format) && filter_is_php($format)){
  16.     return $body;
  17.   }
  18.   $strlen_var = strlen($body);
  19.   // 不包含 html 标签
  20.   if(strpos($body, '<') === false){
  21.     return mb_substr($body, 0, $size);
  22.   }
  23.   // 包含截断标志,优先
  24.   if($e = strpos($body, '<!-- break -->')){
  25.     return mb_substr($body, 0, $e);
  26.   }
  27.   // html 代码标记
  28.   $html_tag = 0;
  29.   // 摘要字符串
  30.   $summary_string = '';
  31.   ..................................

在线DEMO   打包下载

相关文章-related items

查看评论-PHP截取字符串,自动检查闭合html标签

php截 Says: 2011-10-17 09:53 @回复

一个简单的截取字符串      $TitleName = "//www.diaoyude.cn/view_article_339.html ";         $i = strlen($TitleName);       if($i >8){           $TitleName = substr($TitleName,0,8);       }

发表评论-Leave a Reply