国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP怎么樣補齊關閉的HTML標簽

2020-03-24 18:54:21
字體:
來源:轉載
供稿:網友
  • 很多時候,在我們做文章截取摘要的時候,如果出現HTML的內容,會出現截取的文章沒有結束的HTML標簽。這樣的 情況下就會出現頁面樣式錯亂的問題。這個時候我們需要的就是把缺少的結束標簽加批量加上。一個比較好處理的一個函數, 展示如下:

    function CloseTags($html) {         // strip fraction of open or close tag from end (e.g. if we take first x characters, we might cut off a tag at the end!)         $html = preg_replace('/<[^>]*$/','',$html); // ending with fraction of open tag         // put open tags into an array         preg_match_all('#<([a-z]+)(?: .*)?(?<![/|/ ])>#iU', $html, $result);         $opentags = $result[1];         // put all closed tags into an array         preg_match_all('#</([a-z]+)>#iU', $html, $result);         $closetags = $result[1];         $len_opened = count($opentags);         // if all tags are closed, we can return         if (count($closetags) == $len_opened) {             return $html;         }         // close tags in reverse order that they were opened         $opentags = array_reverse($opentags);         // self closing tags         $sc = array('br','input','img','hr','meta','link');         // ,'frame','iframe','param','area','base','basefont','col'         // should not skip tags that can have content inside!         for ($i=0; $i < $len_opened; $i++)         {             $ot = strtolower($opentags[$i]);             if (!in_array($opentags[$i], $closetags) && !in_array($ot,$sc))             {                 $html .= '</'.$opentags[$i].'>';             }             else             {                 unset($closetags[array_search($opentags[$i], $closetags)]);             }         }         return $html; } 

    測試使用的結果:

    <?php

    $content = '<div><p><span>越發忙碌的你,是否想給自己放個假?專注工作的你,是否還記得上一次鍛煉是什么時候?優伴戶外旅行,給你不一樣的旅行體驗:給心自由,便處處都是風景!'; www.it165.net

    echo CloseTags($content);

    /*

    返回的結果是:

    <div><p><span>

    越發忙碌的你,是否想給自己放個假?專注工作的你,是否還記得上一次鍛煉是什么時候?優伴戶外旅行,給你不一樣的旅行體驗:給心自由,便處處都是風景!</span></p></div>

    */

    PHP編程

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 曲阜市| 盐亭县| 达尔| 平顶山市| 离岛区| 旺苍县| 博湖县| 梓潼县| 梁平县| 白河县| 成安县| 武穴市| 南丹县| 长汀县| 封开县| 邻水| 稻城县| 蕉岭县| 隆尧县| 平利县| 兴义市| 汝城县| 阿巴嘎旗| 南郑县| 梅河口市| 渭南市| 成安县| 措勤县| 沁源县| 抚松县| 辽阳县| 临猗县| 通道| 墨脱县| 安仁县| 若羌县| 开原市| 砀山县| 鄢陵县| 广安市| 德庆县|