J'ai utilisé yuicompressor.jar sur mon serveur de test pour la minimisation à la volée des fichiers JavaScript modifiés. Maintenant que j'ai déployé le site sur le serveur public, j'ai remarqué que les politiques du serveur interdisent l'utilisation de exec() ou de ses équivalents, donc plus d'exécution java pour moi.YUICompressor ou similaire en PHP?
Existe-t-il un compresseur JS à la volée implémenté en PHP? La seule chose qui ressemblait à cela que j'ai pu trouver était Minify, mais il s'agit plutôt d'une solution de compression à part entière avec cache et tout. Je veux séparer les fichiers et faire en sorte que les fichiers minimisés suivent mes propres conventions de nommage, donc Minify est un peu trop complexe à cet effet.
L'outil, comme yuicompressor, devrait être capable de prendre un nom de fichier ou un code JavaScript en entrée et devrait soit écrire dans un fichier, soit éditer le code compressé.
EDIT: Pour clarifier, je cherche quelque chose qui ne doit pas être utilisé seul (c'est-à-dire qui peut être appelé depuis une fonction, plutôt que de renifler mes variables GET). Si je voulais juste un compresseur, Minify serait évidemment un bon choix.
EDIT2: Beaucoup de choses ont changé au cours des cinq années depuis que j'ai posé cette question. Aujourd'hui, je recommande fortement de séparer le flux de travail frontal du code du serveur. Il existe de nombreux bons outils pour le développement JS et à l'exception des améliorations jQuery les plus triviales, il est préférable d'avoir un workflow complet avec le groupage automatisé, le test et le filtrage et de déployer uniquement les bundles minifiés plutôt que les fichiers bruts.
Comme je l'ai dit. Je ne peux pas trouver un moyen d'exécuter minify à partir d'une application. Heck, il s'attend même à ce que certains paramètres GET soient définis plutôt que de prendre un nom de fichier comme argument. C'est probablement bien, mais pas ce que je cherche. –
Minify n'est pas complexe. Vous pouvez avoir un fichier spécifique minifié simplement en utilisant quelque chose comme – karim79
Il est complexe en termes de son "API". En fait, il n'en a pas vraiment. C'est un outil autonome qui lit superglobals pour l'entrée. Si vous pouvez me diriger vers un wrapper qui me permet d'utiliser Minify depuis une application, ce serait une option valide. –