PHP 源代码压缩小工具

使用方法:(在命令行运行)
<div class="codetitle"><a style="CURSOR: pointer" data="97686" class="copybut" id="copybut97686" onclick="doCopy('code97686')"> 代码如下:

<div class="codebody" id="code97686">
PHP compactor.PHP DESTINATION.PHP SOURCE.PHP

下载: compactor.php
<div class="codetitle"><a style="CURSOR: pointer" data="89400" class="copybut" id="copybut89400" onclick="doCopy('code89400')"> 代码如下:
<div class="codebody" id="code89400">
#!/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.\n\n\tUsage: 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);
?>

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...