Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Minificar javascript con uglifyjs via PHP con el comando exec()

Estas en el tema de Minificar javascript con uglifyjs via PHP con el comando exec() en el foro de PHP en Foros del Web. Hola, He instalado Nodejs y npm ( en Windows) ... luego con el npm install he instalado uglify-js Luego he probado minificar un archivo de ...
  #1 (permalink)  
Antiguo 25/10/2014, 17:59
 
Fecha de Ingreso: mayo-2013
Mensajes: 191
Antigüedad: 10 años, 10 meses
Puntos: 10
Minificar javascript con uglifyjs via PHP con el comando exec()

Hola,

He instalado Nodejs y npm ( en Windows) ... luego con el npm install he instalado uglify-js

Luego he probado minificar un archivo de prueba javascript en el CMD de windows:
con el comando :
Código BASH:
Ver original
  1. uglifyjs prueba.js -o prueba_min.js

Hasta aquy todo bien. El resultado fue correcto.

Lo que pasa es que quiero hacer esto desde PHP con el comando exec() pero no lo consigo.

He intentado:

Código PHP:
Ver original
  1. exec ("cmd uglifyjs prueba.js -o prueba_min.js"); //nada
  2. exec ("cmd /C uglifyjs prueba.js -o prueba_min.js"); //nada
  3. exec ("cmd start uglifyjs prueba.js -o prueba_min.js"); //nada
  4.  
  5. exec ("cmd node.exe uglifyjs prueba.js -o prueba_min.js"); //nada
  6. exec ("cmd /C node.exe uglifyjs prueba.js -o prueba_min.js"); //nada
  7. exec ("cmd start node.exe uglifyjs prueba.js -o prueba_min.js"); //nada
  8.  
  9. // ********** luego pasando rutas completas:
  10.  
  11. exec ("cmd start 'C:\Program Files\nodejs\node.exe' C:\Users\matake\AppData\Roaming\npm\node_modules\uglify-js\bin\uglifyjs prueba.js -o prueba_min.js"); // NADA
  12.  
  13. //Incluido las combinaciones de mas arriba [B]con /C y start[/B]  ...  esta vez con rutas completas y .... nadaaa ... no encuentro la manera :(

Hay alguien que sabe como hacer funcionar esto ?

O si no, he creado con uglifyjs --self un archivo .js que dicen que se puede emplear desde el navegador ... lo que pasa es que no se como usarlo ... como mandarle la ruta del archivo .js que quiero ... o bien una variable js que contenga dicho script.

Saludos y gracias
  #2 (permalink)  
Antiguo 25/10/2014, 21:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Minificar javascript con uglifyjs via PHP con el comando exec()

Si vas a usar Uglify te sugiero que mejor emplees Grunt para automatizar dichas tareas, hacerlo con exec() sería lo mismo a comprar un martillo y golpear clavos con el mango.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 26/10/2014, 08:48
 
Fecha de Ingreso: mayo-2013
Mensajes: 191
Antigüedad: 10 años, 10 meses
Puntos: 10
Respuesta: Minificar javascript con uglifyjs via PHP con el comando exec()

Ja, ja muy bueno lo del martillo !

Pensaba yo que era una chapuza pero lo primero que he encontrado fue uglify con Nodejs y no encontraba otra manera de comunicar desde PHP que el exec.

Aunque antes de leer tu respuesta ya he subido de grado a "una chapuza mejorada" que consistía en recorer con glob() el(los) directorio(s) que contenían .js ... y así construir los comandos ( con un bucle PHP ) guardarlos en un fichero .bat y luego hacer solo un exec() al dicho fichero .bat.

Lo que pasa es que me he encontrado con otro lio al tener que ejecutar el .bat con derechos de administrador.

Así que me quedo con tu consejo y intentare poco a poco aprender lo del Grunt

Saludos y gracias por el consejo ...

Etiquetas: comando, javascript, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:24.