Forçando o download de um arquivo texto com PHP
[ad#texto]
Em determinado momento algum script PHP pode gerar um arquivo texto e fornecer um link para o usuário do sistema, nada mais normal e trivial de ser realizado a não ser por um pequeno detalhe:
Ao fornecer o link, se o usuário clicar com o mouse o servidor Web irá exibir o conteúdo do arquivo no browser, afinal essa é a atitude espera do servidor Web.
Mas você como bom desenvolvedor acredita que a solução de instruir o usuário a clicar com o botão direito do mouse e depois em “salvar como” é uma solução caseira demais e que depende unica e exclusivamente do usuário o que pode acarretar erros e transtornos.
Porém existe uma solução, basta alterar o seu script PHP e no seu início utilizar o seguinte:
header('Content-type: text/plain');
header('Content-Disposition: attachment; filename="arquivo.txt"');
A instrução acima tem a finalidade de “forçar” o browser a fazer o download do arquivo texto ao invés de exibir o conteúdo no browser.