Although PHP5 already have the Php_strip_whitespace method can return to delete comments and spaces after the PHP source function, in order to learn, here to provide you with a method, you can also remove the code blank and comments, the code is as follows:
Copy CodeThe code is as follows:
/**
* Remove whitespace and comments from the code
* @param string $content code content
* @return String
*/
function Strip_whitespace ($content) {
$STRIPSTR = ";
Analysis of PHP source code
$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]) {
Filter various PHP comments
Case T_comment:
Case T_doc_comment:
Break
Filter spaces
Case T_whitespace:
if (! $last _space) {
$stripStr. = ';
$last _space = true;
}
Break
Case T_start_heredoc:
$stripStr. = "<< <>
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;
}
http://www.bkjia.com/PHPjc/741259.html www.bkjia.com true http://www.bkjia.com/PHPjc/741259.html techarticle Although PHP5 already have the Php_strip_whitespace method can return to delete comments and spaces after the PHP source function, in order to learn, here to provide you with a way, you can also remove the generation ...