DiegoPires.net

  • rss
  • Início
  • Sobre
  • Fale Comigo

Como gerar Excel com o PHP - Parte 1

Diego Pires | 17/04/2008
//-->

Microsoft Excel (Windows) Nessa série de artigos que estou começando aqui no blog vou apresentar algumas formas de você “exportar” seus relatórios para o formato de planilhas Excel.
Existem diversas formas de gerar uma planilha excel com o PHP e eu vou começar com o mais fácil na parte 1. Vamos criar “na unha”, sem utilizar nenhuma extensão ou biblioteca pronta.

Então vamos lá. É muito mais simples do que imagina.
O primeiro passo de tudo é você escrever o seu relatório no navegador em formato de tabela. Sim, o Excel nada mais é que uma enorme tabela de dados. Então não fique se preocupando com coisas do tipo:
“Ah… mas meu sistema é todo tableless, você quer que eu use tabelas agora?”
Tabelas são feitas para serem usadas para apresentar dados tabulados, portanto, essa é a melhor maneira de se utilizar tabelas: Montar relatórios (que não são nada mais do que dados tabulados).

Portanto, faça seu script apresentar o relatório que necessita em formato de dados tabulados. Vou colocar um exemplo bem simples aqui para ilustrar:

<?php
echo ”
<table>
<tr>
<td>Linha 1 - Coluna 1</td>
<td>Linha 1 - Coluna 2</td>
<td>Linha 1 - Coluna 3</td>
<td>Linha 1 - Coluna 4</td>
<td>Linha 1 - Coluna 5</td>
<td>Linha 1 - Coluna 6</td>
</tr>
<tr>
<td>Linha 2 - Coluna 1</td>
<td>Linha 2 - Coluna 2</td>
<td>Linha 2 - Coluna 3</td>
<td>Linha 2 - Coluna 4</td>
<td>Linha 2 - Coluna 5</td>
<td>Linha 2 - Coluna 6</td>
</tr>
<tr>
<td>Linha 3 - Coluna 1</td>
<td>Linha 3 - Coluna 2</td>
<td>Linha 3 - Coluna 3</td>
<td>Linha 3 - Coluna 4</td>
<td>Linha 3 - Coluna 5</td>
<td>Linha 3- Coluna 6</td>
</tr>
</table>
“;
?>

Digamos portanto que esse seja o seu relatório que deseja transformar em excel. Agora o próximo passo é dizer ao navegador que o que ele leu é um arquivo Excel. Para isso, adicione as seguintes linhas no começo do seu script:

header(”Content-type: application/vnd.ms-excel”);
header(”Content-type: application/force-download”);
header(”Content-Disposition: attachment; filename=relatorio.xls”);
header(”Pragma: no-cache”);

Na terceira linha, onde está “filename=relatorio.xls” é o nome do arquivo que o navegador irá sugerir na hora de informar o download do mesmo. Então seu script ficaria assim:

<?php
header(”Content-type: application/vnd.ms-excel”);
header(”Content-type: application/force-download”);
header(”Content-Disposition: attachment; filename=relatorio.xls”);
header(”Pragma: no-cache”);
echo ”
<table>
<tr>
<td>Linha 1 - Coluna 1</td>
<td>Linha 1 - Coluna 2</td>
<td>Linha 1 - Coluna 3</td>
<td>Linha 1 - Coluna 4</td>
<td>Linha 1 - Coluna 5</td>
<td>Linha 1 - Coluna 6</td>
</tr>
<tr>
<td>Linha 2 - Coluna 1</td>
<td>Linha 2 - Coluna 2</td>
<td>Linha 2 - Coluna 3</td>
<td>Linha 2 - Coluna 4</td>
<td>Linha 2 - Coluna 5</td>
<td>Linha 2 - Coluna 6</td>
</tr>
<tr>
<td>Linha 3 - Coluna 1</td>
<td>Linha 3 - Coluna 2</td>
<td>Linha 3 - Coluna 3</td>
<td>Linha 3 - Coluna 4</td>
<td>Linha 3 - Coluna 5</td>
<td>Linha 3- Coluna 6</td>
</tr>
</table>
“;
?>

E pronto, acabou. Muito simples não é?

Na parte 2 desse artigo irei apresentar algumas classes css para formatar seu arquivo excel e deixar ele mais “apresentável” e também formatar dados como numérico, texto, data, etc.

Espero ter ajudado

Não deixe de ler também:

  • Como gerar Excel com o PHP - Parte 2
  • Atualizando
  • O PHP precisa da nossa ajuda
  • Trabalhando com datas no PHP
  • SkyDrive, da MS, no Brasil

Se gostou do texto e não quer perder as atualizações assine meu feed!

Categorias
Tecnologia
Tags
excel, php
Comentários RSS
Comentários RSS
Trackback
Trackback

« Novidade no Registro.br Cuidado com os temas do WordPress »

Uma resposta

Como gerar Excel com o PHP - Parte 2 | DiegoPires.net

[...] a série que comecei aqui, vamos a parte 2

Como gerar Excel com o PHP - Parte 2 | DiegoPires.net | 15/05/2008

[...] a série que comecei aqui, vamos a parte 2 de como gerar planilhas excel com o [...]

Deixar um comentário

Você pode usar essas TAGS : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Assine

Links

  • Flep
  • Plinio Torres

Loja

  • Câmeras Digitais
  • Celulares
  • Computadores
  • Ipod
  • Laptop`s
  • Monitores LCD
  • Playstation 3
  • TV`s LCD
  • Xbox 360

Tags

3G antivírus apple banda larga Beta boo-box busca celular chave crack datas excel firefox Firefox 3 gmail google gspace Internet Explorer iphone Kaspersky lançamentos Linux loja virtual microsoft monetização notebook oi openid orkut php pirata plugin Programação Recorde serial skydrive speedy submarino Tecnologia telefônica velox Web Standarts Windows windows vista WordPress

Arquivos

  • setembro 2008 (2)
  • julho 2008 (3)
  • junho 2008 (12)
  • maio 2008 (10)
  • abril 2008 (13)
  • março 2008 (13)
  • fevereiro 2008 (7)

  • 2 Usuários Online

Categorias

  • Diversão
  • Humor
  • Open Source
  • Programação
  • Tecnologia
  • Windows
  • WordPress

« out spinner iCalendar dez »
novembro 2008
S T Q Q S S D
 12
3456789
10111213141516
17181920212223
24252627282930

Enquete

O conteúdo do site foi útil para você?

Resultados

Loading ... Loading ...

Mais Visitados

  • Ativação e Validação do Windows Vista SP1 - 28.840 views
  • Como validar o Windows Vista Pirata - 27.755 views
  • Ativação e Validação do Windows Vista - 22.174 views
  • Chave para o Kaspersky Internet Security 7 - 16.839 views
  • Chaves para o Kaspersky 6 e 7 (novas) - 10.865 views
  • Retirar Aviso de Cópia Pirata do Windows Vista - 5.122 views
  • Validação do Windows XP Pirata - 4.776 views
  • Kaspersky - O melhor antivírus do momento - 4.606 views
  • Kaspersky Gratuito - Beta 2009 - 4.598 views
  • Kaspersky 7 e 8 (KAV e KIS) - 3.028 views

10.065 comentários de spam
bloqueados pelo
Akismet
rss Comentários RSS valid xhtml 1.1 design by jide powered by Wordpress get firefox