• <ul id="mayc0"></ul>
    <ul id="mayc0"><center id="mayc0"></center></ul>
    <strike id="mayc0"><input id="mayc0"></input></strike>
    <ul id="mayc0"></ul>
  • 億恩科技有限公司旗下門戶資訊平臺!
    服務器租用 4元建網站

    PHP代碼中去除注釋和空白方法

    PHP內置了一個php_strip_whitespace方法用于讀取php文件并去除代碼中的空白和注釋,但不支持直接讀取內容去除空白和注釋,下面的方法則可以支持讀取字符串內容,并且ThinkPHP框架內置了該方法。

    PHP內置了一個php_strip_whitespace方法用于讀取php文件并去除代碼中的空白和注釋,但不支持直接讀取內容去除空白和注釋,下面的方法則可以支持讀取字符串內容,并且ThinkPHP框架內置了該方法。

     /**
     * 去除代碼中的空白和注釋
     * @param string $content 代碼內容
     * @return string
     */
    function strip_whitespace($content) {
        $stripStr   = '';
        //分析php源碼
        $tokens     = token_get_all($content);
        $last_space = false;
        for ($i = 0, $j = count($tokens); $i < $j; $i++) {
            if (is_string($tokens[$i])) {
                $last_space = false;
                $stripStr  .= $tokens[$i];
            } else {
                switch ($tokens[$i][0]) {
                    //過濾各種PHP注釋
                    case T_COMMENT:
                    case T_DOC_COMMENT:
                        break;
                    //過濾空格
                    case T_WHITESPACE:
                        if (!$last_space) {
                            $stripStr  .= ' ';
                            $last_space = true;
                        }
                        break;
                    case T_START_HEREDOC:
                        $stripStr .= "<<<THINK\n";
                        break;
                    case T_END_HEREDOC:
                        $stripStr .= "THINK;\n";
                        for($k = $i+1; $k < $j; $k++) {
                            if(is_string($tokens[$k]) && $tokens[$k] == ';') {
                                $i = $k;
                                break;
                            } else if($tokens[$k][0] == T_CLOSE_TAG) {
                                break;
                            }
                        }
                        break;
                    default:
                        $last_space = false;
                        $stripStr  .= $tokens[$i][1];
                }
            }
        }
        return $stripStr;
    }

    河南億恩科技股份有限公司(www.vbseamall.com)始創于2000年,專注服務器托管租用,是國家工信部認定的綜合電信服務運營商。億恩為近五十萬的用戶提供服務器托管、服務器租用、機柜租用、云服務器、網站建設、網站托管等網絡基礎服務,另有網總管、名片俠網絡推廣服務,使得客戶不斷的獲得更大的收益。
    服務器/云主機 24小時售后服務電話:0371-60135900
    虛擬主機/智能建站 24小時售后服務電話:0371-55621053
    網絡版權侵權舉報電話:0371-60135995
    服務熱線:0371-60135900

    2
    2
    分享到:責任編輯:黃利敏

    相關推介

    共有:0條評論網友評論:

    驗證碼 看不清換一張 換一張

    親,還沒評論呢!速度搶沙發吧!