<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Diego Pires</title>
	<atom:link href="http://diegopires.net/feed" rel="self" type="application/rss+xml" />
	<link>http://diegopires.net</link>
	<description>WebDeveloper</description>
	<lastBuildDate>Wed, 21 Dec 2011 13:13:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Como gerar Excel com o PHP – Parte 3</title>
		<link>http://diegopires.net/como-gerar-excel-com-o-php-parte-3.html</link>
		<comments>http://diegopires.net/como-gerar-excel-com-o-php-parte-3.html#comments</comments>
		<pubDate>Wed, 21 Dec 2011 13:12:00 +0000</pubDate>
		<dc:creator>Diego Pires</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://diegopires.net/?p=37</guid>
		<description><![CDATA[Olá Nesse novo artigo sobre excel com php eu vou explicar o básico de como gerar um aquivo excel nativo (sem ser uma tabela html gravada como um xls, ou um CSV separado por vírgulas). Veja os artigos anteriores. Parte 1 Parte 2 Para fazer isso vamos precisar da classe que está no PEAR chamada [...]]]></description>
			<content:encoded><![CDATA[<p>Olá</p>
<p>Nesse novo artigo sobre excel com php eu vou explicar o básico de como gerar um aquivo excel nativo (sem ser uma tabela html gravada como um xls, ou um CSV separado por vírgulas).<br />
<span id="more-37"></span><br />
Veja os artigos anteriores.</p>
<ul class="arrow">
<li><a href="http://diegopires.net/como-gerar-excel-com-o-php-parte-1.html">Parte 1</a></li>
<li><a href="http://diegopires.net/como-gerar-excel-com-o-php-parte-2.html">Parte 2</a></li>
</ul>
<p>Para fazer isso vamos precisar da classe que está no PEAR chamada <a href="http://pear.php.net/package/Spreadsheet_Excel_Writer/">Spreadsheet_Excel_Writer</a>.<br />
Não vou explicar como instalar extensões da PEAR, mas caso encontre dificuldades deixe um comentário que tento ajudar na medida do possível <img src='http://diegopires.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Após instalada vamos fazer o básico com ela.<br />
<span class="tip">require_once &#8216;Spreadsheet/Excel/Writer.php&#8217;;<br />
$planilha = new Spreadsheet_Excel_Writer();</span><br />
Nessas duas linhas incluímos a classe necessária para gerar o excel.</p>
<p><span class="tip">$plan1 =&amp; $planilha-&gt;addWorksheet(&#8216;Planilha 1&#8242;);</span><br />
Aqui adicionamos uma planilha a esse excel.</p>
<p><span class="tip">$format_borda_center =&amp; $planilha-&gt;addFormat();<br />
$format_borda_center-&gt;setBorder(1);<br />
$format_borda_center-&gt;setSize(9);<br />
$format_borda_center-&gt;setAlign(&#8216;center&#8217;);</span><br />
Para formatar as células é necessário criar os formatos antes. Nessas 4 linhas criei um formato que deixa a célula com 1px de borda, Tamanho 9 de fonte e alinhada ao centro.<br />
Acredito que não preciso dar maiores explicações, pois o código é bem intuitivo.<br />
Nesse primeiro artigo sobre a SpreadSheet Excel Writer não vou explicar muito sobre os formatos, fica para outro artigo.</p>
<p><span class="tip">$coluna = 0;<br />
$linha = 0;<br />
$plan1-&gt;write($linha, $coluna, &#8216;Coluna 1&#8242;,$format_borda_center);<br />
$plan1-&gt;write($linha, $coluna++, &#8216;Coluna 2&#8242;,$format_borda_center);<br />
$plan1-&gt;write($linha, $coluna++, &#8216;Coluna 3&#8242;,$format_borda_center);<br />
$plan1-&gt;write($linha, $coluna++, &#8216;Coluna 4&#8242;,$format_borda_center);<br />
$plan1-&gt;select();<br />
$plan1-&gt;activate();<br />
$planilha-&gt;send(&#8220;Planilha.xls&#8221;);<br />
$planilha-&gt;close();</span><br />
E finalmente escrevemos no excel, note que escrevi apenas na primeira linha, com 4 colunas. Depois disso seleciono e deixo ativa a planilha que criei, e envio o arquivo para download no navegador do usuário.<br />
A partir daí você pode começar a brincar com a classe, gerando seus relatórios em excel de uma forma mais &#8220;profissional&#8221;.</p>
<p>É isso, qualquer dúvida ou sugestão, comente <img src='http://diegopires.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Abraço</p>
]]></content:encoded>
			<wfw:commentRss>http://diegopires.net/como-gerar-excel-com-o-php-parte-3.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como gerar Excel com o PHP &#8211; Parte 2</title>
		<link>http://diegopires.net/como-gerar-excel-com-o-php-parte-2.html</link>
		<comments>http://diegopires.net/como-gerar-excel-com-o-php-parte-2.html#comments</comments>
		<pubDate>Thu, 15 May 2008 13:39:25 +0000</pubDate>
		<dc:creator>Diego Pires</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://diegopires.net/?p=23</guid>
		<description><![CDATA[Continuando a série que comecei aqui, vamos a parte 2 de como gerar planilhas excel com o PHP. Nessa segunda parte eu vou apresentar algumas propriedades CSS que aplicando ao seu HTML o Excel irá interpretar e formatar o campo de acordo com o que necessita. Isso evita muitas dores de cabeça, como por exemplo, [...]]]></description>
			<content:encoded><![CDATA[<p>Continuando a série que <a href="http://diegopires.net/como-gerar-excel-com-o-php-parte-1/" target="_blank">comecei aqui</a>, vamos a parte 2 de como gerar planilhas excel com o PHP.</p>
<p>Nessa segunda parte eu vou apresentar algumas propriedades CSS que aplicando ao seu HTML o Excel irá interpretar e formatar o campo de acordo com o que necessita.<br />
Isso evita muitas dores de cabeça, como por exemplo, formato de datas. Já enfrentei casos de na mesma planilha, na mesma coluna, mas em linhas diferentes, o excel interpretar uma data como dd/mm/YYYY e na outra linha mm/dd/YYYY.</p>
<p>Vou deixar aqui apenas alguns exemplos que são mais comuns de serem utilizados. Caso necessitem de outros, é só pedir nos comentários que eu descubro e coloco aqui.</p>
<p>A terceira parte desse artigo falará sobre as outras formas de gerar excel com o PHP, como as classes prontas para esse fim.<br />
<span id="more-23"></span><br />
<strong>Data no formato dd/mm/yy</strong></p>
<p class="note">.DATA1 {<br />
mso-number-format:&#8221;dd\\/mm\\/yy\\;\\@&#8221;;<br />
}</p>
<p><strong>Data &#8220;Simples&#8221;</strong></p>
<p class="note">.DATA2 {<br />
mso-number-format:&#8221;Short Date&#8221;;<br />
}</p>
<p><strong>Moeda Nacional</strong></p>
<p class="note">.MOEDARS {<br />
mso-number-format:&#8221;_\\(\\[$R$ -416\\]* \\#\\,\\#\\#0\\.00_\\)\\;_\\(\\[$R$ -416\\]* \\\\\\(\\#\\,\\#\\#0\\.00\\\\\\)\\;_\\(\\[$R$ -416\\]* \\0022-\\0022??_\\)\\;_\\(\\@_\\)&#8221;;<br />
}</p>
<p><strong>Moeda Estrangeira (US$)</strong></p>
<p class="note">.MOEDAUS {<br />
mso-number-format:&#8221;_\\(\\[$$ -416\\]* \\#\\,\\#\\#0\\.00_\\)\\;_\\(\\[$$ -416\\]* \\\\\\(\\#\\,\\#\\#0\\.00\\\\\\)\\;_\\(\\[$$ -416\\]* \\0022-\\0022??_\\)\\;_\\(\\@_\\)&#8221;;<br />
}</p>
<p><strong>Percentual</strong></p>
<p class="note">.PORCENTAGEM {<br />
mso-number-format:Percent;<br />
}</p>
<p><strong>Forçar formatação como texto</strong></p>
<p class="note">.TEXTO {<br />
mso-number-format:&#8221;\\@&#8221;;<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://diegopires.net/como-gerar-excel-com-o-php-parte-2.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Como gerar excel com o PHP &#8211; Parte 1</title>
		<link>http://diegopires.net/como-gerar-excel-com-o-php-parte-1.html</link>
		<comments>http://diegopires.net/como-gerar-excel-com-o-php-parte-1.html#comments</comments>
		<pubDate>Thu, 17 Apr 2008 13:31:40 +0000</pubDate>
		<dc:creator>Diego Pires</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://diegopires.net/?p=19</guid>
		<description><![CDATA[Nessa série de artigos que estou começando aqui no blog vou apresentar algumas formas de você &#8220;exportar&#8221; 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 &#8220;na unha&#8221;, sem utilizar nenhuma extensão [...]]]></description>
			<content:encoded><![CDATA[<p>Nessa série de artigos que estou começando aqui no blog vou apresentar algumas formas de você &#8220;exportar&#8221; seus relatórios para o formato de planilhas Excel.<br />
Existem diversas formas de gerar uma planilha excel com o <a href="http://php.net" target="_blank">PHP</a> e eu vou começar com o mais fácil na parte 1. Vamos criar &#8220;na unha&#8221;, sem utilizar nenhuma extensão ou biblioteca pronta.</p>
<div style="display: none;">Find really <a href="http://www.olnevhost.net/dedicated-servers.html"><strong>cheap dedicated servers</strong></a>.</div>
<p>Então vamos lá. É muito mais simples do que imagina.<span id="more-19"></span><br />
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:<br />
&#8220;Ah&#8230; mas meu sistema é todo tableless, você quer que eu use tabelas agora?&#8221;<br />
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).</p>
<p>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:</p>
<p class="note">&lt;?php<br />
echo &#8221;<br />
&lt;table&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 3- Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&#8220;;<br />
?&gt;</p>
<p>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:</p>
<p class="note">header(&#8220;Content-type: application/vnd.ms-excel&#8221;);<br />
header(&#8220;Content-type: application/force-download&#8221;);<br />
header(&#8220;Content-Disposition: attachment; filename=relatorio.xls&#8221;);<br />
header(&#8220;Pragma: no-cache&#8221;);</p>
<p>Na terceira linha, onde está &#8220;<strong>filename=relatorio.xls</strong>&#8221; é o nome do arquivo que o navegador irá sugerir na hora de informar o download do mesmo. Então seu script ficaria assim:</p>
<p class="note">&lt;?php<br />
header(&#8220;Content-type: application/vnd.ms-excel&#8221;);<br />
header(&#8220;Content-type: application/force-download&#8221;);<br />
header(&#8220;Content-Disposition: attachment; filename=relatorio.xls&#8221;);<br />
header(&#8220;Pragma: no-cache&#8221;);<br />
echo &#8221;<br />
&lt;table&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 1 &#8211; Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 2 &#8211; Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 1&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 2&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 3&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 4&lt;/td&gt;<br />
&lt;td&gt;Linha 3 &#8211; Coluna 5&lt;/td&gt;<br />
&lt;td&gt;Linha 3- Coluna 6&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&#8220;;<br />
?&gt;</p>
<p>E pronto, acabou. Muito simples não é?</p>
<p>Na parte 2 desse artigo irei apresentar algumas classes css para formatar seu arquivo excel e deixar ele mais &#8220;apresentável&#8221; e também formatar dados como numérico, texto, data, etc.</p>
<p>Espero ter ajudado</p>
]]></content:encoded>
			<wfw:commentRss>http://diegopires.net/como-gerar-excel-com-o-php-parte-1.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trabalhando com Datas em PHP</title>
		<link>http://diegopires.net/trabalhando-com-datas-em-php.html</link>
		<comments>http://diegopires.net/trabalhando-com-datas-em-php.html#comments</comments>
		<pubDate>Mon, 25 Feb 2008 11:04:37 +0000</pubDate>
		<dc:creator>Diego Pires</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://diegopires.net/?p=13</guid>
		<description><![CDATA[Já vi muita gente quebrar a cabeça para fazer comparações, adicionar, remover dias de uma determinada data e etc. Ou seja, problemas para trabalhar e manipular datas com o PHP. Vou procurar explicar da maneira mais simples e prática possível, pois não tem segredo trabalhar e manipular datas no PHP. Comparando datas A forma mais [...]]]></description>
			<content:encoded><![CDATA[<p>Já vi muita gente quebrar a cabeça para fazer comparações, adicionar, remover dias de uma determinada data e etc. Ou seja, problemas para trabalhar e manipular datas com o PHP.<br />
Vou procurar explicar da maneira mais simples e prática possível, pois não tem segredo trabalhar e manipular datas no PHP.<br />
<span id="more-13"></span></p>
<h2>Comparando datas</h2>
<p>A forma mais fácil de se comparar duas datas, para saber se uma é maior, menor ou igual a outra é transformando as mesmas no seguinte formato: Ymd.<br />
Dessa forma basta usar os comparadores lógicos <strong>&gt; &lt; == &gt;= &lt;=</strong> para chegar o resultado esperado. Exemplo:<br />
O usuário tem que digitar em seu sistema duas datas para que um relatório seja montado. Para saber se a primeira data digitada (o que seria o início) não é maior que a segunda data digitada (que seria o final) transforma-se as duas no formato <strong>Ymd </strong>e pronto:</p>
<p class="note">$data1 = &#8220;20/10/2007&#8243;;<br />
$data2 = &#8220;20/12/2007&#8243;;</p>
<p>Transformando-se as duas no formato <strong>Ymd</strong></p>
<p class="note">$data1 = substr($data1,6,4).substr($data1,4,2).substr($data1,0,2);<br />
$data2 = substr($data2,6,4).substr($data2,4,2).substr($data2,0,2);</p>
<p>E depois basta compara-las:</p>
<p class="note">if($data1 &gt; $data2) die();</p>
<h2>Adicionando ou removendo dias</h2>
<p>Para adicionar ou remover dias de uma determinada data também é bem simples&#8230; Para isso o mais fácil é utilizar a função mktime().<br />
No exemplo abaixo eu quero pegar que dia foi exatos 231 dias atrás</p>
<p class="note">$data = date(&#8220;d/m/Y&#8221;,mktime(0,0,0,date(&#8220;m&#8221;),date(&#8220;d&#8221;)-231,date(&#8220;Y&#8221;)));</p>
<p>Mais fácil que isso impossível <img src='http://diegopires.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  E o mesmo se aplica a meses e anos. E também a soma de dias, meses e anos.</p>
<p class="note">$data = date(&#8220;d/m/Y&#8221;,mktime(0,0,0,date(&#8220;m&#8221;)+3,date(&#8220;d&#8221;),date(&#8220;Y&#8221;)));</p>
<p>No exemplo acima ele retorna a data, 3 meses após a data de hoje.</p>
<h2>Conclusão</h2>
<p>Para trabalhar com datas no PHP é bem simples. A única coisa que precisamos é não complicar e sim simplificar.<br />
Em todos os casos, a melhor consulta sempre é o <a title="php.net" href="http://php.net" target="_blank">php.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://diegopires.net/trabalhando-com-datas-em-php.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

