PHP中的自定义JavaScript压缩

PHP中的自定义JavaScript压缩,javascript,php,regex,compression,minify,Javascript,Php,Regex,Compression,Minify,我试图用PHP实现自己的javascript压缩。除了一件小事,一切都很好 private $search = array(" ", " ","new", "return", "var", "function", "\r\n", "\n", "\r"); private $replace = array("", "","new ", "return ", "var ", "function ","", "", ""); private $comments = "/(?:(?:\/\*(?:[

我试图用PHP实现自己的javascript压缩。除了一件小事,一切都很好

private $search = array("   ", " ","new", "return", "var", "function", "\r\n", "\n", "\r");
private $replace = array("", "","new ", "return ", "var ", "function ","", "", "");
private $comments = "/(?:(?:\/\*(?:[^*]|(?:\*+[^*\/]))*\*+\/)|(?:(?<!\:|\\\)\/\/.*))/";
/*$ctx are the file contents */
$ctx = preg_replace($this->comments, "", $ctx);
$ctx = str_replace($this->search, $this->replace, $ctx);
替换代码返回的结果如下

$str = "function (){return 'Thisismyname'}";
是否有正则表达式或其他方法来解决此问题?
提前谢谢

缩小脚本比您想象的要复杂得多,您应该使用可用的众多压缩器中的一个,而不是尝试重新发明轮子,这里有一个->缩小器不能直接在代码上作为字符串工作。他们在通过解析代码获得的AST(抽象语法树)上完成工作。你会发现这个演讲很有趣:
$str = "function (){return 'Thisismyname'}";