Created
March 16, 2017 00:09
-
-
Save CarlosLongarela/49a2c06bd1d7ca48ca21cb567c7fc077 to your computer and use it in GitHub Desktop.
Optimizar las imágenes con el programa de sistema jpegoptim desde PHP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Optimizar las imágenes con el programa de sistema jpegoptim | |
* | |
* @param array $array_imgs Array con los nombres de las fotos. | |
* @param string $ruta_fotos Ruta donde están las fotos. | |
* @param boolean $no_exec Si se ejecuta o sólo ver el resultado sin ejecutar. | |
* | |
* @return string|array Devuelve una cadena con el fallo o un array con los resultados. | |
*/ | |
function optimiza_img( $array_imgs, $ruta_fotos = '', $no_exec = true ) { | |
$programa = '/usr/bin/jpegoptim'; | |
$array_result = array(); | |
$cmd_exec = ''; | |
if ( ! file_exists( $programa ) ) { | |
$res = 'No se encuentra el ejecutable "' . $programa . '"'; | |
return $res; | |
} | |
if ( ! is_array( $array_imgs ) ) { | |
$res = 'No se ha indicado un array de imágenes'; | |
return $res; | |
} | |
if ( empty( $ruta_fotos ) ) { | |
$res = 'No se ha indicado una carpeta para las fotos'; | |
return $res; | |
} | |
if ( ! file_exists( $ruta_fotos ) ) { | |
$res = 'No existe la carpeta "' . $ruta_fotos . '"'; | |
return $res; | |
} | |
if ( true === $no_exec ) { | |
$params = ' --noaction'; | |
} else { | |
$params = null; | |
} | |
$params .= ' -p -m70 --strip-all '; | |
foreach ( $array_imgs as $foto ) { | |
$cmd_exec = $programa . $params . $ruta_fotos . basename( $foto ); | |
$res2 = exec( $cmd_exec, $array_result ); | |
} | |
return $array_result; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment