PHP 源代码压缩小工具

#!/usr/bin/env php
<?php
/**
* Compact PHP code.
*
* Strip comments, combine entire library into one file.
*/
if ($argc < 3) {
print "Strip unecessary data from PHP source files.nntUsage: php compactor.php DESTINATION.php SOURCE.php";
exit;
}

$source = $argv[2];
$target = $argv[1];
print "Compacting $source into $target.n";
include $source;
$files = get_included_files();
print_r($files);
$out = fopen($target, 'w');
fwrite($out, '<?php' . PHP_EOL);
fwrite($out, '// QueryPath. Copyright (c) 2009, Matt Butcher.' . PHP_EOL);
fwrite($out, '// This software is released under the LGPL, v. 2.1 or an MIT-style license.' . PHP_EOL);
fwrite($out ,'// http://opensource.org/licenses/lgpl-2.1.php');
fwrite($out, '// http://querypath.org.' . PHP_EOL);
foreach ($files as $f) {
if ($f !== __FILE__) {
$contents = file_get_contents($f);
foreach (token_get_all($contents) as $token) {
if (is_string($token)) {
fwrite($out, $token);
}
else {
switch ($token[0]) {
case T_REQUIRE:
case T_REQUIRE_ONCE:
case T_INCLUDE_ONCE:
// We leave T_INCLUDE since it is rarely used to include
// libraries and often used to include HTML/template files.
case T_COMMENT:
case T_DOC_COMMENT:
case T_OPEN_TAG:
case T_CLOSE_TAG:
break;
case T_WHITESPACE:
fwrite($out, ' ');
break;
default:
fwrite($out, $token[1]);
}
}
}
}
}
fclose($out);
?>

时间: 2024-10-09 19:33:39

PHP 源代码压缩小工具的相关文章

PHP 源代码压缩小工具_php实例

使用方法:(在命令行运行) 复制代码 代码如下: php compactor.php DESTINATION.php SOURCE.php 下载: compactor.php 复制代码 代码如下: #!/usr/bin/env php <?php /** * Compact PHP code. * * Strip comments, combine entire library into one file. */ if ($argc < 3) { print "Strip unece

C#照片批量压缩小工具

原文:C#照片批量压缩小工具 做了一个照片批量压缩工具,其实核心代码几分钟就完成了,但整个小工具做下来还是花了一天的时间.中间遇到了大堆问题,并寻求最好的解决方案予以解决.现在就分享一下这个看似简单的小工具所使用的技术. 软件界面如下: 要做真实场景的测试,拿的都是单反照的大相片:图片尺寸3888*2592  图片大小5.37M: 其中遇到的问题与解决方案分享: 1.用listview显示图片缩略图非常慢的问题 这个问题是始料未及的,如果不做也可以,但是没有缩略图就有损软件体验,这是所有最求完美

2014年Windows平台软件推荐:神器小工具(骨灰级

原文  http://www.wtoutiao.com/a/120621.html 底层工具 "If you know how to use Process Monitor competently, people of both sexes will immediately find you more attractive." – Scott Hanselman Ultimate Boot CD 和 Ultimate Boot CD for Windows  – 这些光盘是程序员修电脑

谈一谈在工作过程中搜集的.NET小工具小程序 数据库脚本工具 VS2010/2012风格的界面框架

原文 http://www.cnblogs.com/JamesLi2015/archive/2013/05/23/3094294.html 工作中遇到的问题,经常会在网络上搜集一些相关的内容,以此扩展以解决相同性质的问题,StackOverflow,CodeProject,CodPlex是我经常查找内容的网站.以下分享我找到的一些比较有典型意义的程序,列举工作中中可以能会遇到的场景和解决方法. SQL Server Runner 网址:http://www.codeproject.com/Art

WEBJX分享适合web开发人员需求的小工具

文章简介:今天就给大家分享10个有用的小工具,我相信这将是适合大多数开发人员的需求,这些小工具在可用性,速度和稳定性方面,为开发人员提供更多的选择功能,如果你正在开发一个这样的项目有,这些小工具是不错的选择. 构件 (或控制) 是由用户,如窗口或文本框中显示可变信息图形用户界面 (GUI) 的元素.在web开发当中我们经常需要构建用户友好的部件,如百度谷歌地图的拖拽,社会化分享工具的显示次数,漂亮的UI按钮等等,这些都是由小部件构建应用程序模块然后呈现给用户的基本视觉页面. 今天就给大家分享10

页面构建事半功倍:页面构建常用的一些小工具

文章简介:我们将在本文中介绍一些关于页面构建常用的一些小工具,大部分是基于firefox的插件,通过这些小工具可以让我们在页面构建中事半功倍. 我们将在本文中介绍一些关于页面构建常用的一些小工具,大部分是基于firefox的插件,通过这些小工具可以让我们在页面构建中事半功倍. 页面bug调试工具–Firebug 实时测量工具–Measureit 实时颜色选取工具–Colorzilla SEO优化工具–SenSEO CSS使用效率优化工具–CSS usage 网页截图存储工具–Pearl cres

IE浏览器开发人员工具中实用的“小工具”

  自IE8浏览器开始,微软在IE中内置了开发人员工具,一般用户而言大概很少在使用吧?不过小编要说的,虽然这是一款开发人员工具,但是里面却有很多实用的"小工具"噢! 按一下键盘上F12可以打开或关闭该工具,打开开发人员工具后会出现在IE浏览器窗口的下面,各种实用的"小工具"可以由菜单栏中打开. 在"文件"里面,你可以设置查看网页源代码时所采用的程序,例如:记事本.Word.EditPlus.FrontPage 等. 在"缓存"

如何用一款小工具大大加速MySQL SQL语句优化(附源码)

作者介绍 韩锋,宜信技术研发中心数据库架构师.精通多种关系型数据库,曾任职于当当网.TOM在线等公司,曾任多家公司首席DBA.数据库架构师等职,多年一线数据库架构.设计.开发经验.著有<SQL优化最佳实践>一书.   引言   优化SQL,是DBA常见的工作之一.如何高效.快速地优化一条语句,是每个DBA经常要面对的一个问题.在日常的优化工作中,我发现有很多操作是在优化过程中必不可少的步骤.然而这些步骤重复性的执行,又会耗费DBA很多精力.于是萌发了自己编写小工具,提高优化效率的想法.   那

Common Gui Tools 1.1,Java GUI实用小工具集

Common Gui Tools Common Gui Tools 是用java编写,GUI界面的实用小工具集,1.1版有13个小工具: 1,编码转换:Character Converter 2,加密解密:Encrypt And Decrypt 3,计算文件数字签名:File Digital Signature,支持大文件 4,正则表达式验证:Regex Tester 5,执行Script脚本:Run Script 6,文件(夹)查找操作:Folder And File Operate 7,An