此包已被废弃,不再维护。没有建议的替代包。

Uglify JS 和 Uglify CSS 的简单 PHP 封装

1.0.3 2013-07-15 12:41 UTC

This package is not auto-updated.

Last update: 2019-02-20 17:29:14 UTC


README

此存储库不再受支持。如果您想接管它,请与我们联系。

UglifyPHP

v1.0.3

A simple PHP wrapper for Uglify JS and Uglify CSS

安装

只需运行 composer require smallhadroncollider/uglify-php

使用方法

首先确保您已在系统上安装了 Uglify JS 和/或 Uglify CSS。您可以使用 which uglifyjswhich uglifycss 检查它们是否存在。

use UglifyPHP\JS;
use UglifyPHP\CSS;

if (JS::installed()) {
    $js = new JS(array('file-1.js', 'file-2.js', 'file-3.js'));

    if ($js->minify('min.js')) {
        // Minification successfull
    } else {
        // Minifcation error
    }
}

if (CSS::installed()) {
    $css = new CSS(array('file-1.css', 'file-2.css', 'file-3.css'));

    if ($css->minify('min.css')) {
        // Minification successfull
    } else {
        // Minification error
    }
}

选项

Uglify JSUglify CSS 都支持许多选项。您可以通过将选项作为关联数组传递给 minify() 函数来调用这些选项。没有值的选项(例如 --wrap--cute-comments)应设置为 true。所有其他值都应作为字符串传递(即使是数字参数)。

$js->minify('output.js', array(
    'screw-ie8' => true,
    'comments' => 'all'
));

$css->minify('output.css', array(
    'cute-comments' => true,
    'max-line-len' => '50'
));

可用选项

有关详细信息,请参阅 Uglify JSUglify CSS 文档。

JS
  • source-map
  • source-map-root
  • source-map-url
  • in-source-map
  • screw-ie8
  • prefix
  • output
  • beautify
  • mangle
  • reserved
  • compress
  • define
  • comments
  • acorn
  • spidermonkey
  • self
  • wrap
  • export-all
CSS
  • max-line-len
  • expand-vars
  • ugly-comments
  • cute-comments

使用带有沙盒 LAMP 服务器的 UglifyPHP

如果您正在使用沙盒 LAMP 服务器,例如 MAMP,您可能会发现,尽管您已安装了 Uglify JS/CSS,但 installed() 函数返回 false。这些服务器通常在沙盒中运行,不支持外部安装的库。有两种可能的方法可以工作(第二种是针对 MAMP 的)。

使用绝对路径

如果您在命令行上运行 which uglifyjs/which uglifycss,您应该得到 uglifyjs/uglifycss 可执行文件的完整路径名。您可以要求 UglifyPHP 使用此完整路径

JS::location('/usr/local/bin/uglifyjs');
CSS::location('/usr/local/bin/uflifycss');

if (JS::installed()) { /* JS Code */ }
if (CSS::installed()) { /* CSS Code */ }

MAMP 沙盒

您可以通过编辑以下文件来关闭 MAMP 沙箱功能:/Applications/MAMP/Library/bin/envvars(这将影响 MAMP 上运行的所有站点)

修改前

DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
export DYLD_LIBRARY_PATH

修改后

# DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
# export DYLD_LIBRARY_PATH

export PATH="$PATH:/usr/local/bin"

版本历史

1.0.3

  • 修复了参数空间错误 [#1] - 由 @lboynton 报告

1.0.2

  • 修复了文件路径空间错误

1.0.1

  • 添加了选项支持

1.0.0

首次发布

许可

MIT 许可证(MIT)

版权所有 © 2013,小型强子对撞机

在此特此免费授予任何获得此软件及其相关文档副本(以下简称“软件”)的人士,在不受限制的情况下使用该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,以及允许向软件提供的人士进行此类操作,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的质量保证,无论是明示的、暗示的,还是关于适销性、特定用途适用性或非侵权的保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论该索赔、损害或其他责任是基于合同、侵权或其他原因,是否源于、与软件有关、或与软件的使用或其他操作有关。