Como posso oferecer um arquivo xml compactado para download usando PHP
Pergunta
Eu tenho um script PHP que cria um arquivo xml a partir do db. Eu gostaria de ter o script criar os dados XML e imediatamente fazer um arquivo .gzip disponível para download. Você pode por favor me dar algumas idéias?
Obrigado!
Solução
Você pode facilmente aplicar gzip compressão com a função gzencode .
<?
header("Content-Disposition: attachment; filename=yourFile.xml.gz");
header("Content-type: application/x-gzip");
echo gzencode($xmlToCompress);
Outras dicas
Algo como isso?
<?php
header('Content-type: application/x-gzip');
header('Content-Disposition: attachment; filename="downloaded.gz"');
$data = implode("", file('somefile.xml'));
print( gzencode($data, 9) ); //9 is the level of compression
?>
Se você não tem o gzip módulo disponíveis,
<?php
system('gzip filename.xml');
?>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow