LinuxParty
Un fallo de los ordenadores en la Estación Espacial Internacional (EEI), donde residen tres astronautas, ha dejado al laboratorio orbital dependiendo de los sistemas del transbordador Atlantis, informó hoy la NASA.
La agencia espacial de EEUU indicó que esto podría prolongar aún más la ya extendida misión del transbordador y sus siete tripulantes.
Leer más: Fallan los ordenadores de la "Estación Espacial Internacional" Escribir un comentario
Las noches de verano son propicias para la observación del cielo. No tanto porque sean más claras que en invierno, sino porque la temperatura y las vacaciones suelen acompañar. Si al anochecer levantamos la mirada en un sitio oscuro y despejado, una de las estrellas más brillantes será Vega. Ésta es la quinta estrella más brillante de todo el cielo. Está situada en la constelación de Lyra. Vega, Deneb y Altair forman el llamado Triángulo del Verano, las tres estrellas que reinan en las noches estivales.
Resumen:
PHP 5.2 incluye, finalmente, soporte nativo para archivos ZIP. Esta cuarta entrega de la serie "¿Qué hay de nuevo en PHP 5.2?" te muestra cómo usar esta nueva funcionalidad para crear, editar, leer, subir y descargar archivos ZIP. Al terminar, estarás preparado para manipular archivos comprimidos directamente desde PHP, ahorrando ancho de banda y espacio en disco.
Introducción a ZIP
El formato ZIP, introducido en 1989 por Phil Katz (PKZIP), permite comprimir y agrupar varios archivos en un solo contenedor. Su especificación abierta ha facilitado su inclusión en gestores de archivos de Windows®, macOS, Konqueror y Nautilus.
Ventajas de la compresión ZIP:
-
Reducción del tamaño de los archivos.
-
Agrupación de múltiples archivos en uno solo.
-
Ahorro de ancho de banda al transferir.
-
Mayor comodidad para el usuario final.
En sistemas como Windows XP, un archivo ZIP se abre como una "carpeta comprimida" con doble clic. Lo mismo ocurre en entornos KDE, GNOME o macOS.
¿A dónde va ese espacio?
Al crear un archivo ZIP, los archivos se "deflan", es decir, se comprimen eliminando redundancias (palabras repetidas, espacios vacíos, etc.).
Ejemplo:
Archivo de texto original:
“You make a living by what you get; you make a life by what you give.”
Análisis de duplicados:
Palabras únicas:
Archivo comprimido (ejemplo con índice):
1 2 3 living 4 5 1 get, 1 2 3 life 4 5 1 give
Aunque la compresión es modesta en este caso (de 64 a 56 caracteres), cuando se aplican textos largos los beneficios se amplifican. En promedio:
-
Archivos de texto → 70% de compresión.
-
Imágenes (ya comprimidas, como JPEG) → 10% o menos.
¿Qué hay dentro de un ZIP?
Un archivo ZIP contiene:
-
Una estructura jerárquica (como un sistema de archivos).
-
Múltiples archivos y carpetas.
-
Metadatos (nombre, tamaño, checksum).
PHP permite acceder a esta información mediante la clase ZipArchive
. Puedes:
-
Ver contenido sin extraer.
-
Leer o verificar archivos.
-
Manipular directorios internos.
Crear archivos ZIP con PHP
Necesitamos:
-
Un archivo
.txt
como base. -
Código PHP para crear el ZIP y agregar contenido.
📄 testtext.txt
Had I the heavens' embroidered cloths, Enwrought with golden and silver light, ... Tread softly because you tread on my dreams.
📁 Código PHP para crear el ZIP (zipcreate.php)
<?php $zip = new ZipArchive(); $filename = "newzip.zip"; if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) { exit("No se puede abrir <$filename>\n"); } $zip->addFromString("firstfile." . time() . ".txt", "Este es el primer archivo en el ZIP.\n"); $zip->addFromString("testdir/secondfile." . time() . ".txt", "Este es el segundo archivo, en el directorio testdir.\n"); echo "Archivos en el ZIP: " . $zip->numFiles . "\n"; $zip->close(); ?>
🖼️ Salida esperada (ASCII)
+-----------------------------+ | ZIP creado: newzip.zip | | Contenido: | | - firstfile.1729924832.txt| | - testdir/secondfile... | +-----------------------------+
Añadir archivos externos al ZIP
$zip->addFile("testtext.txt");
Este método incorpora archivos reales al archivo ZIP. Si están en el mismo directorio que el script PHP, se incluirán directamente.
Leer archivos ZIP con PHP
📁 Código (zipread.php)
<?php $zip = new ZipArchive(); $filename = "newzip.zip"; if ($zip->open($filename)!==TRUE) { exit("No se puede abrir <$filename>\n"); } echo "Contenido del ZIP:<br>"; for ($i=0; $i<$zip->numFiles; $i++) { $stat = $zip->statIndex($i); echo "Archivo $i: " . $stat['name'] . "<br>"; } $zip->extractTo('./testdestination/'); $zip->close(); ?>
El ZIP se abre, lista su contenido y se extrae automáticamente a la carpeta testdestination/
.
⚠️ Si ya existen archivos con el mismo nombre, serán sobrescritos.
Aplicaciones prácticas
-
Subidas en lote: permite que el usuario suba múltiples archivos a través de un único ZIP.
-
Descargas organizadas: agrupar resultados o reportes en un solo archivo descargable.
-
Reducción de tráfico: menos peso = menos coste de transferencia.
La integración nativa del soporte ZIP en PHP 5.2 proporciona una solución robusta y versátil para manipular archivos comprimidos. Desde la creación de archivos con contenido dinámico hasta su lectura y extracción, las funciones de ZipArchive
abren un nuevo abanico de posibilidades para desarrolladores PHP.
¿Quieres que prepare una versión en PDF, Markdown o como plantilla para publicación? Puedo hacerlo en un solo paso.
Ars Technica hechó una “primera ojeada” a safari para Windows, es interesante porque se ha escrito desde la perspectiva de alguien nuevo en safari. Se realizaron unas pruebas contra Firefox 2 e IE7 y aparte del cargar levemente más rápido las páginas, Ars no encontró mucho para recomendarlo a los usuarios de Windows. 'El modesto aumento en la representación de funcionamiento deja también varias deficiencias, y el interfaz de safari no proporciona simplemente la utilidad o la flexibilidad de los productos en competición.'
Puedes leer más en:
perspective of someone new to Safari.
¿Qué hay que hacer para empezar a escribir programas para Linux? Pues la mayoría utilizará un editor de textos, conocimiento sobre algún lenguaje de programación, ideas sobre el compilador y las librerías que utiliza el lenguaje. Pregunte a un programador profesional en que se diferencian él de usted. Insistiendo sobre cuáles de esas cosas pueden ayudarle a comenzar, otra cosa es introducirle a escribir programas eficientes, los cuales como, un depurador, herramientas de depuración de la memoria, y sobretodo una buena comprensión del funcionamiento interno del núcleo de Linux y de sus procesos.
Sugerente propuesta la del profesor Viktor Mayer-Schönberger, que nos resume Nate Anderson en Escaping the data panopticon: Prof says computers must learn to "forget", que veo en Harvard Prof Says Computers Need to Forget.
En estos tiempos en lo que parece que nos va a sobrar es memoria, se pregunta el profesor si no sería conveniente que, por defecto, los sistemas informáticos estuvieran programados para 'olvidar': esto es, todos los datos que alguien pueda recolectar deberían tener una fecha de caducidad: las tiendas, sobre nuestras compras; los gobiernos, sobre los datos que recolectan de nosotros, etc.
La fauna está poblando las ciudades de la zona de exclusión de Chernobyl. Una de los mayores residentes rehusa evacuar la zona contaminada, la granjera explicó que grupos de lobos se han comido dos de sus perros, y que jabalíes pisotean su maizal. Los científicos están dividos sobre, si o no, los animales están prosperando en el ambiente altamente radiactivo:
El “universo virtual” es un realista ciberespacio tridimensional. La gente puede interactuar con otras personas, construir casas y otras estructuras en el mundo del juego. Debido a su interfaz, este ambiente virtual se puede utilizar para hacer más cosas y hacerlo más hospitalable: las tareas de la simulación y de la visualización para e.g. tareas de industria o ciencia también están soportados.
El próximo fin de semana (del 14-16 de junio) se podrá disfrutar del evento "Sonar", que trata sobre música electrónica y arte digital, con la presencia de los más importantes artistas nacionales y internacionales, prometiendo ser uno de los festivales más innovadores y originales; pudiera ser uno festivales de música electrónica más importantes del mundo. Será un innovador festival, hedonístico y sobretodo creativo.
-
Programación
- Un minúsculo minúsculo, pero muy muy útil lector de RSS
- PHP-Calendar 0.10.8
- Distribución mundial de Php
- Windows pierde terreno con los desarrolladores
- PowerBASIC/DOS y Linux, una Gran Solución para Grandes/Pequeños Problemas
- Porqué la gente odia a los programadores
- Cómo conectar a MySQL usando el API C bajo Linux / UNIX.
- Funciones en el BASH prompt.
- Webconverger, es un Kiosko Web
- Finalmente tendremos nuevos elementos en HTML 5
- Caja de herramientas de los programadores de Linux
- LinuxParty, el 11-S, Fallos HD, y Resucitamos como el Ave Fénix.