从PHP文件中删除注释的最佳方法是什么?
我想做一些与strip-whitespace()类似的事情-但它也不应该删除换行符。
例如:
我要这个:
<?PHP
// something
if ($whatsit) {
do_something(); # we do something here
echo '<html>Some embedded HTML</html>';
}
/* another long
comment
*/
some_more_code();
?>
成为:
<?PHP
if ($whatsit) {
do_something();
echo '<html>Some embedded HTML</html>';
}
some_more_code();
?>
(尽管如果在删除注释的地方仍然留有空行,那是不可能的)。
由于可能需要保留嵌入式html,因此这可能是不可能的-那是什么导致了google上出现的问题。
我会使用tokenizer。这是我的解决方案。它应该在PHP
4和5上都可以使用:
$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;
问题内容: 我的网站最近遭到了一个无辜的代码的攻击: 那里没有SQL调用,因此我不担心SQL注入。但是,显然,SQL并不是唯一的注入方式。 该网站提供了解释以及避免代码注入的一些示例:http : //www.theserverpages.com/articles/webmasters/php/security/Code_Injection_Vulnerabilities_Explained.ht
问题内容: 我刚刚在此处阅读了一个新问题,询问的标题与我的基本相同。那让我开始思考-并在网络上搜索(当然,大多数点击都指向SO;)。所以我认为 - 应该有一个简单的正则表达式,能够从任何代码中删除C样式的注释。 是的,关于SO的这个问题/陈述有答案,但是我发现的答案都是不完整和/或过于复杂。 因此,我开始进行实验,并提出了一个可以在 我 能想象的所有类型的代码上运行的代码: 第一种选择检查 双斜杠
问题内容: 在Python中,至少有两种方法可以使用键从字典中删除项目。 两种方法都会从字典中删除项目。 我想知道这些方法之间有什么区别,以及在哪种情况下应该使用其中一种。 问题答案: 如果要 捕获已删除的项目 ,请使用,例如。 使用,如果你想 从字典中删除项目 。 如果要删除,则在密钥不在词典中时禁止显示错误:
有没有办法从一个巨大的xml文件中删除注释( 两者,根元素前的注释 和内的注释 最好的解决方案是使用xPath。我试过了 它适用于DOM,但不适用于vtd xml 这是我选择评论的代码 但此处的屏幕上打印的是nothing。 有没有办法用vtd xml做到这一点? 谢谢你的帮助。
我们正在使用一个包含用JAXB注释的bean的库。我们使用这些类的方式并不依赖于JAXB。换句话说,我们不需要JAXB,也不依赖于注释。 然而,由于注释的存在,它们最终会被处理注释的其他类引用。这要求我在应用程序中绑定JAXB,这是不允许的,因为JAXB在
问题内容: 问题 在处理产品和订单的Web应用程序中,我想维护前雇员(用户)与其处理的订单之间的信息和关系。我想维护过时产品与包括这些产品的订单之间的信息和关系。 但是我希望员工能够整理管理界面,例如删除前员工,过时的产品,过时的产品组等。 我正在考虑实施软删除。那么,通常如何做到这一点? 我的即时想法 我的第一个想法是在应该可以软删除的每个对象表中粘贴“ TINYINT NOT NULL DEF