Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/03/2012, 20:42
Avatar de gildus
gildus
 
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 21 años, 4 meses
Puntos: 105
Respuesta: Un buen reto para hoy!

Holas,

Disculpa por el desorden en el codigo, pero mas o menos es asi:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $contenidoDelXML = "TU_CONTENIDO_XML";
  4. $nombreFileXML = 'archivo.xml';
  5.  
  6. // Establecer el límite a 5 MB.
  7. $fiveMBs = 5 * 1024 * 1024;
  8. $fp = fopen("php://temp/maxmemory:$fiveMBs", 'r+');
  9.  
  10. fputs($fp, $contenidoDelXML);
  11.  
  12. // Leer lo que hemos escrito.
  13. rewind($fp);
  14. $contenidoXML = stream_get_contents($fp);
  15.  
  16.  
  17. $zip = new ZipArchive;
  18. $res = $zip->open($nombreFileXML.'.zip', ZipArchive::CREATE);
  19. if ($res === TRUE) {
  20.     $zip->addFromString($nombreFileXML, $contenidoXML);
  21.     $zip->close();
  22.     echo 'ok';
  23. } else {
  24.     echo 'failed';
  25. }
  26. ?>


Fuente:
http://www.php.net/manual/es/wrappers.php.php
http://www.php.net/manual/en/ziparch...fromstring.php

En teoria deberia de funcionar tambien con php://memory


Saludos
__________________
.: Gildus :.