閱讀175 返回首頁    go 阿裏雲 go 技術社區[雲棲]


PHP壓縮html網頁代碼(清除空格,換行符,製表符,注釋標記)

網頁壓縮,去除多餘的空行,換行符,製表符,注釋等
根據網上的代碼改的,我把正則部分第一條件去掉了,因為實際應用中他把所有的空格都去除了,這樣很不方便。
如果你覺得不去除好,可以使用CSS樣式代替空格
/**
 * 壓縮html : 清除換行符,清除製表符,去掉注釋標記
 * @param $string
 * @return 壓縮後的$string
 * */
function compress_html($string) {
    $string = str_replace("\r\n", '', $string); //清除換行符
    $string = str_replace("\n", '', $string); //清除換行符
    $string = str_replace("\t", '', $string); //清除製表符
    $pattern = array(
        //"/> *([^ ]*) *</", //去掉注釋標記
        "/[\s]+/",
        "/<!--[^!]*-->/",
        "/\" /",
        "/ \"/",
        "'/\*[^*]*\*/'");
    $replace = array(
        //">\\1<",
        " ", "", "\"", "\"", "");
    return preg_replace($pattern, $replace, $string);
}


原始函數

/** 
* 壓縮html : 清除換行符,清除製表符,去掉注釋標記 
* @param $string 
* @return 壓縮後的$string 
* */
function compress_html($string) {
    $string = str_replace("\r\n", '', $string); //清除換行符 
    $string = str_replace("\n", '', $string); //清除換行符 
    $string = str_replace("\t", '', $string); //清除製表符 
    $pattern = array("/> *([^ ]*) *</", //去掉注釋標記 
    "/[\s]+/", "/<!--[^!]*-->/", "/\" /", "/ \"/", "'/\*[^*]*\*/'");
    $replace = array(">\\1<", " ", "", "\"", "\"", "");
    return preg_replace($pattern, $replace, $string);
}

作者找不到了。。

最後更新:2017-04-03 14:54:06

  上一篇:go 利用getopt_long()為程序傳入參數
  下一篇:go 軟件工程之五個層次四個部分