Viernes, Diciembre 28th, 2007...20:11
Asignar a multiples zips, nombre que contiene dentro del .zip
Hace poco, por una razón X, he tenido que renombrar todos unos zips del tipo 92832.zip al contenido que tenían dentro. Con esté script que pongo a disposición de todos, se puede lograr en un rato, está en php.
define('ZIP_DIR','zips/');
define('ZIP_DIR_NUEVO','zipsNuevos/');
if(!dl('php_zip.dll')) die('Necesita la extension ZIP');
$zipDir = dir(ZIP_DIR);
while(false !==($zipArchivo = $zipDir->read()))
{
$zipDirArchivo = ZIP_DIR.$zipArchivo;
if('.zip'==substr($zipArchivo, -4) && is_file($zipDirArchivo))
{
$zip = zip_open($zipDirArchivo);
if($zip)
{
$zipEntradaNombre = basename(zip_entry_name(zip_read($zip)));
$zipEntradaExt = strrpos($zipEntradaNombre, '.');
$zipNuevoNombre = substr($zipEntradaNombre, 0, ($zipEntradaExt?$zipEntradaExt:strlen($zipEntradaNombre)));
$zipNuevoNombre = ucwords(str_replace('.', ' ', $zipNuevoNombre));
$zipNuevoNombreDir = ZIP_DIR_NUEVO.$zipNuevoNombre.'.zip';
zip_close($zip);
if(file_exists($zipNuevoNombreDir))
{
$i=0;
while(file_exists($zipNuevoNombreDir = ZIP_DIR_NUEVO.$zipNuevoNombre.'_'.$i.'.zip')) $i++;
}
echo (rename($zipDirArchivo, $zipNuevoNombreDir) ? 'Renombrado':'Error al renombrar').": $zipDirArchivo => $zipNuevoNombreDir\r\n";
}
}
}
$zipDir->close();

1 Comentario
Enero 4th, 2008 at 17:03
lo estaba buscando por dios! muy buenooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
Dejar una respuesta