Heim  >  Artikel  >  Backend-Entwicklung  >  Wie entferne ich Kommentare effizient aus PHP-Code, ohne die Syntax zu beeinträchtigen?

Wie entferne ich Kommentare effizient aus PHP-Code, ohne die Syntax zu beeinträchtigen?

Linda Hamilton
Linda HamiltonOriginal
2024-10-23 10:57:37248Durchsuche

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

Effiziente Entfernung von PHP-Code-Kommentaren ohne Beeinträchtigung der Syntax

Um Kommentare aus PHP-Code effektiv zu entfernen und gleichzeitig eingebettetes HTML beizubehalten, bietet token_get_all() eine zuverlässige Lösung. Hier ist eine Beispielimplementierung:

<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>

Diese Lösung setzt sowohl PHP 4- als auch PHP 5-Kompatibilität voraus. Es durchläuft die Code-Tokens und überspringt alle, die zu Kommentartypen gehören (einschließlich Standardkommentare, Dokumentationskommentare und mehrzeilige Kommentare im PHP 4-Stil), um sicherzustellen, dass eingebettetes HTML erhalten bleibt. Der resultierende $newStr enthält den geänderten Code ohne Kommentare.

Das obige ist der detaillierte Inhalt vonWie entferne ich Kommentare effizient aus PHP-Code, ohne die Syntax zu beeinträchtigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn