Php 是否可以在preg_replace/str_replace之后格式化源代码?
我使用preg_replace和str_replace从xml文件中删除了几行代码Php 是否可以在preg_replace/str_replace之后格式化源代码?,php,preg-replace,Php,Preg Replace,我使用preg_replace和str_replace从xml文件中删除了几行代码 preg_replace('/(<!DOCTYPE(.*?)<fields )/s', '<fields ', $readSettings); preg_replace('/(不是100%确定你在问什么。你能在正则表达式之后发布一个HTML示例吗 这将删除多余的空白 preg_replace( '~\s{2,}~', '', $str ); 您还可以查看PHPDOM(PHP手册),将HTML
preg_replace('/(<!DOCTYPE(.*?)<fields )/s', '<fields ', $readSettings);
preg_replace('/(不是100%确定你在问什么。你能在正则表达式之后发布一个HTML示例吗
这将删除多余的空白
preg_replace( '~\s{2,}~', '', $str );
您还可以查看PHPDOM(PHP手册),将HTML加载到其中,然后将preserveWhiteSpace和formatOutput设置为false
添加:
preg_replace( '~\s+\n+\s+\n+~', "\n", $str );
我想可以,但正如前面提到的,你可以用PHPDOM来实现,它会更灵活
$doc = new DOMDocument();
$doc->loadHTML( $html );
$doc->preserveWhiteSpace = true; // Or false?
$doc->formatOutput = true;
echo $doc->saveHTML();
请参阅@AlexHowansky,thnx,但它需要额外的lib安装和特定的设置,我使用的代码是为许多人设计的,他们的环境无法匹配。如果(class_exists('Tidy')){…},请使用包装您的代码
在这里找到了解决方案我已经发布了链接,在这里,您的建议是删除xml文件中的所有空格。我想清理格式化