ホームページ  >  記事  >  バックエンド開発  >  構文を損なうことなく PHP コードからコメントを効率的に削除するにはどうすればよいですか?

構文を損なうことなく PHP コードからコメントを効率的に削除するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-23 10:57:37250ブラウズ

How to Efficiently Remove Comments from PHP Code without Compromising Syntax?

構文を損なうことなく PHP コードのコメントを効率的に削除

埋め込まれた HTML を保持しながら PHP コードからコメントを効果的に削除するために、token_get_all() は信頼できるソリューション。実装例は次のとおりです。

<code class="php"><?php

$fileStr = file_get_contents('path/to/file');
$newStr  = '';

$commentTokens = array(T_COMMENT);

if (defined('T_DOC_COMMENT')) {
    $commentTokens[] = T_DOC_COMMENT; // PHP 5
}

if (defined('T_ML_COMMENT')) {
    $commentTokens[] = T_ML_COMMENT;  // PHP 4
}

$tokens = token_get_all($fileStr);

foreach ($tokens as $token) {    
    if (is_array($token)) {
        if (in_array($token[0], $commentTokens)) {
            continue;
        }
        
        $token = $token[1];
    }

    $newStr .= $token;
}

echo $newStr;

?></code>

このソリューションは、PHP 4 と 5 の両方の互換性を前提としています。コード トークンを反復処理し、コメント タイプ (標準コメント、ドキュメント コメント、PHP 4 スタイルの複数行コメントを含む) に属するものをスキップし、埋め込まれた HTML が確実に保持されるようにします。結果の $newStr には、コメントなしで変更されたコードが含まれます。

以上が構文を損なうことなく PHP コードからコメントを効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。