Я использую yuicompressor.jar на своем тестовом сервере для минимизации измененных файлов JavaScript на лету. Теперь, когда я развернул сайт на общедоступном сервере, я заметил, что политики сервера запрещают использование exec() или его эквивалентов, поэтому для меня больше нет java-исполнения.YUICompressor или аналогичный в PHP?
Есть ли достойный компрессор JS на лету, реализованный на PHP? Единственное, что мне удалось найти, это Minify, но это скорее полномасштабное решение для сжатия с кешем и всем остальным. Я хочу, чтобы файлы были раздельными, и файлы с минимизацией следуют моим собственным соглашениям об именах, поэтому Minify для вас слишком сложна.
Инструмент, такой как yuicompressor, должен иметь возможность ввода имени файла или JavaScript в качестве входных данных и должен либо записывать в файл, либо выводить сжатый JavaScript.
EDIT: Чтобы уточнить, я ищу что-то, что не обязательно должно использоваться как автономное (т. Е. Его можно вызывать из функции, а не обнюхивать мои переменные GET). Если бы я просто хотел компрессор, Minify, очевидно, был бы хорошим выбором.
EDIT2: За пять лет с тех пор, как я задал этот вопрос, многое изменилось. Сегодня я настоятельно рекомендую отделить интерфейсный рабочий процесс от кода сервера. Есть много хороших инструментов для разработки JS вокруг и за исключением самых тривиальных улучшений jQuery, это лучшая идея иметь полный рабочий процесс с автоматическим связыванием, тестированием и линией на месте и просто развертывать мини-пакеты, а не сырые файлы.
Как я уже говорил. Я не могу найти способ запустить minify из приложения. Heck, он даже ожидает, что некоторые параметры GET будут установлены, а не будут принимать имя файла в качестве аргумента. Это, наверное, хорошо, но не то, что я ищу. –
Minify не является сложным. У вас может быть определенный файл, минитированный, просто используя что-то вроде – karim79
Это сложный с точки зрения «API». На самом деле на самом деле нет. Это автономный инструмент, который читает суперглобалы для ввода. Если вы можете указать мне на оболочку, которая позволяет мне использовать Minify из приложения, это будет допустимый вариант. –