2015-02-23 5 views
1

В моем проекте много JS-кода внутри файлов PHP. Я хочу минимизировать JS-код в этих файлах, и мне нравится uglifyjs2 program. Возможно ли, что этот (или любой) JS-шутер действует на JS-код INSIDE php-файл?uglifyjs javascript внутри php-файлов

Кто-то собирается удалить все JS-коды из файлов PHP и поместить их в файлы .js - но это не всегда удобно.

Имейте в виду, что я делаю NOT хочу минимизировать JS на лету (действуя на выходе интерпретатора PHP). Я доставляю PHP-код клиентам, содержащим JS, и я хочу минимизировать JS внутри файлов PHP, которые я доставляю.

+0

https://github.com/makesites/uglifyjs-php ... Это? Это буквально кажется решением для вашего дела: P – briosheje

+0

@briosheje Полностью вне темы. Он не ищет PHP API для Uglify. – meagar

+0

@meagar: Почему бы и нет? Я имею в виду, что целью является минимизация JS в PHP, нет? – briosheje

ответ

0

То, что вы ищете, не существует.

Единственная реальная причина иметь встроенный JavaScript внутри ваших файлов PHP - это то, что вам нужно интерполировать PHP и JavaScript, чтобы динамически генерировать некоторые или все сценарии. Вы не можете достоверно минимизировать такой JavaScript до PHP на самом деле обрабатывается, поэтому вы бы хотели его минимизировать после PHP запускается по каждому запросу. Там должен быть очень мало ценным для этого, так как большая часть вашего JavaScript не должна быть написана внутри ваших файлов PHP.

+0

Javascript не может взаимодействовать с кодом PHP или быть в зависимости от него ... поэтому я не согласен с тем, что вы не можете минимизировать JS до тех пор, пока PHP не будет обработан. Есть много причин, чтобы поместить JS-код непосредственно в PHP (например: минимизировать время загрузки для нескольких сегментов JS внутри файла PHP) – TSG

+0

@GenerationDSystems: хотя обычно это не очень хорошая практика, некоторые пользователи перекликают переменные на JavaScript, делая такие вещи, как 'var a = " ";' или что-то в этом роде. –

+0

@GenerationDSystems Это правда, но PHP может абсолютно взаимодействовать со статическим JavaScript, который он генерирует. PHP-сгенерированный JavaScript часто будет прервать изложение, так что вы просто не должны этого делать. Обычно, как правило, требуется изменить идентификаторы, и он не может надеяться работать, если вы используете эти идентификаторы в любом месте PHP. – meagar

-1

Независимо от сценария php, который генерируется при отправке вывода в браузер. Если вы отправили «фактический» вывод сценария вместо выходного потока в другое приложение и извлекли и перенаправили , то вывод - да, вы можете сделать что угодно.
Другой вопрос, насколько целесообразным и разумным этот подход. uglifyjs2 - это приложение node.js, и поэтому этот шаг потребует некоторой межпроцессной связи, то есть сверхсложности и дополнительного времени/памяти/точек отказа и всего этого хорошего материала.
Возможно, это стоит усилий, может быть, нет. Возможно, что-то вроде https://github.com/tedious/JShrink будет достаточно ...

+0

Я не хочу минимизировать «на лету», поэтому действие на выходе интерпретатора PHP неприменимо. Я хочу минимизировать JS-код внутри файлов PHP (которые доставляются клиентам для запуска в их собственной среде) – TSG

+0

PHP вообще не заботится о литеральном содержимом вне тегов . – VolkerK

Смежные вопросы