91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php怎么實現html標簽自動閉合

發布時間:2022-12-02 17:47:30 來源:億速云 閱讀:135 作者:iii 欄目:編程語言

本篇內容主要講解“php怎么實現html標簽自動閉合”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“php怎么實現html標簽自動閉合”吧!

實現代碼:

/**
     * @Description: html 自動閉合
     * @param string    $html   html
     * @param int       $len    閉合搜尋附近的標簽次數 默認3個 最小1
     * @return: string 
     */
    public function subHtml($html,$len = 3)
    {
        #去除注釋
        #$html = preg_replace('~<!--(?:.|\r|\n)+?-->','',$html);
        $result = '';
        $tagStack = array();
        $contents = preg_split('~(<!--(?:.|\r|\n)*?-->|<[\s\r\n]*script(?:.|\r|\n)+?<[\s\r\n]*/[\s\r\n]*script[\s\r\n]*>|<[\s\r\n]*/?[\s\r\n]*[a-z0-9]+(?:[^\'">]*?([\'"])(?:\\\\\2|(?!\2).)*?\2)*[^\'">]*>)~si', $html, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
        foreach ($contents as $kkk => $tag) {
            if ($tag == "" || $kkk-1 >= 0 && ($tag == "'" || $tag == '"') && preg_match('~^<[\s\r\n]*([a-z0-9]+)[\s\r\n]*(?:[^\'">]*?([\'"])(?:\\\\\2|(?!\2).)*?\2)+[^\'">]*>$~si', $contents[$kkk-1], $match) ) continue;
            $reg = '^<!--(?:.|[\r\n])*?-->$|^<[\s\r\n]*(?:input|img|isindex|area|base|basefont|bgsound|col|embed|frame|keygen|link|meta|nextid|param|plaintext|spacer|wbr|br)(?:[^\'">]*?([\'"])(?:\\\\\1|(?!\1).)*?\1)*?[^\'">]*>$';
            #增加兼容自定義標簽 <img1x src="" /> by:LingMax 
            #$reg .= '|^<[\s\r\n]*[a-z0-9]+(?:(?:[^\'">]*?)([\'"])(?:\\\\\2|(?!\2).)*?\2)*?[^\'">]*/[\s\r\n]*>$';
            if (preg_match('~'.$reg.'~si', $tag)) {
                $result .= $tag;#放行 img這種自帶閉合的標簽
            } else if (preg_match("~^<[\s\r\n]*/[\s\r\n]*([a-z0-9]+)[\s\r\n]*>$~si", $tag, $match)) {
                $arrb = $tagStack;
                $bz = false;
                $lsstr = '';
                for ($i=0; $i < $len; $i++) { 
                    $ls = array_pop($arrb);
                    if($ls == $match[1]){
                        $lsstr .= $tag;
                        $bz = true;
                        break;
                    }else{
                        #出現標簽閉合問題 需要修補
                        $lsstr .= '<!--修補--></'.$ls.'>';
                        #array_push($tagStack, $ls);
                    }
                }
                if($bz){
                    $tagStack = $arrb;
                    $result .= $lsstr;
                }else{
                    $result .= '<!--放棄'.$tag."-->";
                }
 
            } else if (preg_match('~^<[\s\r\n]*([a-z0-9]+)[\s\r\n]*(?:[^\'">]*?([\'"])(?:\\\\\2|(?!\2).)*?\2)*[^\'">]*>$~si', $tag, $match)) {
                array_push($tagStack, $match[1]);
                $result .= $tag;
            }else {
                $result .= $tag;
            }
        }
        while (!empty($tagStack)) {
            $result .= '</' . array_pop($tagStack) . '>';
        }
        return $result;
    }

PHP開發環境搭建工具有哪些

一、phpStudy,是一個新手入門最常用的開發環境。

二、WampServer,WampServer也同樣的也是和phpStudy一樣操作簡單對小白比較友好。

三、XAMPP,XAMPP(Apache+MySQL+PHP+PERL)是一個功能強大的建站集成軟件包。

四、MAMP,MAMP分為兩種MAMP和MAMP Pro for Mac。

五、寶塔面板,寶塔面板是一款服務器管理軟件,支持windows和linux系統。

六、UPUPW,UPUPW是目前Windows平臺下最具特色的Web服務器PHP套件。

到此,相信大家對“php怎么實現html標簽自動閉合”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

如皋市| 湟中县| 保山市| 邳州市| 漳州市| 额尔古纳市| 环江| 内丘县| 达尔| 洪江市| 搜索| 巩义市| 报价| 周宁县| 南澳县| 泰州市| 荥阳市| 荔浦县| 江达县| 保定市| 博野县| 依兰县| 东港市| 西丰县| 长治县| 大连市| 阿拉尔市| 常熟市| 滦平县| 阿荣旗| 桐城市| 依安县| 精河县| 海口市| 于都县| 嘉定区| 永清县| 九龙县| 铁力市| 开江县| 星座|