<?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>Blog do Desenvolvedor &#60;? &#187; php</title>
	<atom:link href="http://www.ricardomartins.info/blog/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ricardomartins.info/blog</link>
	<description>o lugar do profissional web e do e-empreendedor</description>
	<lastBuildDate>Tue, 20 Jul 2010 01:41:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Podcast do PHPSP já está disponível</title>
		<link>http://www.ricardomartins.info/blog/outros/podcast-do-phpsp-ja-esta-disponivel/</link>
		<comments>http://www.ricardomartins.info/blog/outros/podcast-do-phpsp-ja-esta-disponivel/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 11:33:39 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Eventos]]></category>
		<category><![CDATA[Outros]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[podcast]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=371</guid>
		<description><![CDATA[Durante a Campus Party 2010 recebi um convite do pessoal do PHPSP, grupo de desenvolvedores PHP, a gravar um podcast ao vivo durante o evento. Pra quem quiser ouvir, ele já está disponível em http://phpsp.org.br/2010/02/24/phpspcast-6-ao-vivo-da-campus-party-qa/.
]]></description>
			<content:encoded><![CDATA[<p>Durante a Campus Party 2010 recebi um convite do pessoal do <a title="PHPSP - Grupo de desenvolvedores PHP do estado de São Paulo" href="http://phpsp.org.br/" target="_blank">PHPSP</a>, grupo de desenvolvedores PHP, a gravar um podcast ao vivo durante o evento. Pra quem quiser ouvir, ele já está disponível em <a title="Ouvir o Podcast" href="http://phpsp.org.br/2010/02/24/phpspcast-6-ao-vivo-da-campus-party-qa/" target="_blank">http://phpsp.org.br/2010/02/24/phpspcast-6-ao-vivo-da-campus-party-qa/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/podcast-do-phpsp-ja-esta-disponivel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP no prompt de comando</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/php-no-prompt-de-comando/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/php-no-prompt-de-comando/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 00:38:42 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=301</guid>
		<description><![CDATA[Esse mês comecei a trabalhar na LBS, empresa resultante da fusão do Apontador com Maplink. Um dos meus primeiros trabalhos era criar um importador de CSV. Algo rotineiro, mas que resolvemos fazer sem utilizar interface web.
Tudo rodaria no shell do linux ou no prompt do DOS no windows.  Vamos ver como isso funciona no Windows?
Passo [...]]]></description>
			<content:encoded><![CDATA[<p>Esse mês comecei a trabalhar na LBS, empresa resultante da fusão do Apontador com Maplink. Um dos meus primeiros trabalhos era criar um importador de CSV. Algo rotineiro, mas que resolvemos fazer sem utilizar interface web.</p>
<p>Tudo rodaria no shell do linux ou no prompt do DOS no windows.  Vamos ver como isso funciona no Windows?</p>
<p><strong>Passo 1</strong>: Pra facilitar o trabalho, localize onde está o seu php.exe e adicione o path do diretório na variavel de ambiente <em>Temp</em> do Windows. Para isso clique nas propriedades do meu computador, na guia <em>Avançado</em>, e depois no botão <em>Variáveis de Ambiente</em>. Localize na lista inferior a variavel <em>TEMP </em>e acrescente o path do seu php.exe conforme o padrão que já existe.</p>
<p>Dessa forma não precisaremos ir até o diretório do PHP pra chamá-lo quando precisarmos. Podemos apenas digitar <em>php</em> no prompt de comando e o sistema já entenderá quem estamos procurando.</p>
<p><strong>Passo 2</strong>: crie um arquivo <em>qualquer.php</em> que imprima o valor da variável <strong>$argv</strong>. Esta é uma variável pré-declarada que contém um array com todos os parâmetros que podemos passar via linha de comando. (Tente apenas um <em>&lt;?php var_dump($argv)?&gt;</em>)</p>
<p><strong>Passo 3</strong>: pronto. Agora é só executar o arquivo com o comando<br />
<code>php -f <em>c:\caminho\do\qualquer.php </em>-- hello=world foo=bar</code><br />
Tudo que for passado após <strong><code>--</code></strong> é entendido como parâmetro. Fique atendo aos espaços para não ter surpresa. O nosso exemplo retornaria algo do tipo:</p>
<blockquote><p>array(3) {<br />
[0]=&gt;<br />
string(31) &#8220;d:\wamp\www\testes\qualquer.php&#8221;<br />
[1]=&gt;<br />
string(11) &#8220;hello=world&#8221;<br />
[2]=&gt;<br />
string(7) &#8220;foo=bar&#8221;<br />
}</p></blockquote>
<p><strong>Passo 4</strong>: Agora é só tratar os parâmetros (ou seja, o array $argv) e se divertir com os scripts na linha de comando. Além de ser bem mais rápido que executar na web, não é necessário ter o apache (ou o servidor web) sendo executado.</p>
<p>Gostou? Conhece outro jeito de fazer? Comente!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/php-no-prompt-de-comando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Authentication no PHP</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 01:49:04 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[SEO e Marketing]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=277</guid>
		<description><![CDATA[Veja como integrar a autenticação do windows (NTLM) em sistemas PHP.]]></description>
			<content:encoded><![CDATA[<p>Windows Authentication ou Autenticação Integrada no PHP não poderia ser tão fácil.</p>
<p>Hoje ao ler uma entrevista com Manuel Lemos da Microsoft, ele explicou como é simples o funcionamento do recurso em sistemas PHP.</p>
<p><strong>Como integrar o  Windows Authentication no PHP?</strong><br />
Se você roda o php no IIS, para ativar o recurso basta ativar a autenticação NTLM em páginas PHP.<br />
No Apache, para ativar o recurso, basta ativar o módulo <em>mod_ntlm</em> no seu httpd.conf.<br />
O módulo para o Apache pode ser baixado em <a title="Mod Ntlm - Integrated Authentication no PHP" href="http://modntlm.sourceforge.net/" target="_blank">http://modntlm.sourceforge.net/</a>.</p>
<p>Feito isso, basta usar a variável de servidor <em>$_SERVER['LOGON_USER']</em> para recuperar o nome do usuário logado e checar se ele tem acesso à area ou módulo em questão.</p>
<p>Fácil né?</p>
<h6>Fonte: <a title="Entrevista com Manuel Lemos no PHPClasses.org" href="http://www.phpclasses.org/blog/post/102-Microsoft-promotes-the-careers-of-PHP-professionals.html" target="_blank">http://www.phpclasses.org/blog/post/102-Microsoft-promotes-the-careers-of-PHP-professionals.html</a></h6>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Profiler no PHP com Cachegrind</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 13:32:23 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=266</guid>
		<description><![CDATA[Saiba como fazer e interpretar arquivos de profiling do PHP usando xDebug e WinCacheGrind. Veja o quão dispendioso é cada trecho do seu programa desenvolvido em PHP e em outras linguagens.]]></description>
			<content:encoded><![CDATA[<p>Cachegrind é um<em> cache profiler</em> disponível no PHP e em diversas outras linguagens. Ele faz simulações detalhadas do cache do processador, e o mais legal de tudo: mostra quanto cada linha de código carregou o processador em milisegundos, ou %. Ele pode mostrar informações por função, por  módulo ou um resumo completo do programa.</p>
<p>Habilitando o cachegrind o programa pode ficar de 20 a 100 vezes mais lento, por isso vamos deixar pra brincar com ele só nos ambientes de teste/desenvolvimento, ok?</p>
<p>Cachegrind is a cache profiler. It performs detailed simulation of the I1, D1 and L2 caches in your CPU and so can accurately pinpoint the sources of cache misses in your code. It identifies the number of cache misses, memory references and instructions executed for each line of source code, with per-function, per-module and whole-program summaries. It is useful with programs written in any language. Cachegrind runs programs about 20&#8211;100x slower than normal.</p>
<p>Ouvi sobre cachegrind no Podcast do PHPSP, o <a title="Podcast do PHPSP #3 - PHP pra gente grande" href="http://phpsp.org.br/2009/08/24/phpspcast-3-des-sobrinhacao-php-pra-gente-grande/" target="_blank">PHPSPCast n. 3</a>.  Pra mim o recurso ainda é novidade, mas vou mostrar como funciona.</p>
<h2>Configurando o xDebug</h2>
<p>No mês passado fiz um post explicando sobre <a title="xDebug no PHP com Wamp e NetBeans" href="http://www.ricardomartins.info/blog/2009/06/debugando-em-php-com-wamp-e-netbeans/">como fazer debug no PHP com Wamp e Netbeans</a>, usando o XDebug. Siga os passos até terminar de instalar o xDebug no seu PHP/Wamp Server.</p>
<p>Feito isso, vamos abrir o php.ini e configurar a pasta do profiler, onde queremos salvar os arquivos de cachegrind para leitura. Para isso basta adicionar (ou modificar) as linhas a seguir na seção [XDebug]:</p>
<blockquote><p>xdebug.profiler_enable=1<br />
xdebug.profiler_output_dir=&#8221;<span style="color: #ff0000;">c:\wamp\xdebug</span>&#8220;</p></blockquote>
<p>E pronto. Agora é só executar suas páginas normalmente e olhar na pasta para ver se estão sendo gerados arquivos com nome <em>cachegrind.out</em>. Agora precisaremos de uma ferramenta para analizar esses arquivos.</p>
<h2>Analizando arquivos de profiler com WinCacheGrind</h2>
<p>WinCacheGrind é gratuíto e pode ser baixado em <a title="WincacheGrind Download" href="http://sourceforge.net/projects/wincachegrind/" target="_blank">http://sourceforge.net/projects/wincachegrind/</a>. Como o nome diz, ele só funciona no Windows. Mas há dezenas de aplicativos que fazem isso (até melhores) via web e também em outros OS.</p>
<p>Após instalá-lo, basta abrir os arquivos cachegrind gerados pelo xdebug. Ele automaticamente analiza o arquivo e tudo mais. Não há muito o que explicar sobre ele. Veja:</p>
<p><img class="aligncenter size-full wp-image-268" title="Tela do WinCacheGrind" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/08/wincachegrind2.jpg" alt="Tela do WinCacheGrind" width="597" height="488" /><br />
Você pode consultar linha por linha, ou um resumo completo do fonte.  Ele ainda mostra em formato de árvore, para que você possa ir abrindo as classes e ver que trecho prejudicou mais a performance do seu programa.</p>
<p>Como disse, há dezenas de programas que fazem a leitura da saída de profiling. Esse foi o que eu experimentei. Há o <a href="http://kcachegrind.sourceforge.net/html/Home.html" target="_blank">KCachegring</a> que roda em vários sistemas operacionais, ou o <a href="http://code.google.com/p/webgrind/" target="_blank">WebGrind</a> que roda no browser.</p>
<p>Espero ter dado o &#8216;empurrãozinho&#8217; que você precisava pra melhorar a forma com que você fazia análise de performance.</p>
<p>Colabore! Deixe seu comentário!</p>
<h3>Outras fontes</h3>
<p>WebGrind &#8211; <a href="http://code.google.com/p/webgrind/" target="_blank">http://code.google.com/p/webgrind/</a><br />
PHPSP &#8211; <a href="http://www.phpsp.org.br/" target="_blank">http://www.phpsp.org.br/</a> e <a href="http://phpsp.org.br/2009/05/04/analise-de-performance/" target="_blank">http://phpsp.org.br/2009/05/04/analise-de-performance/</a><br />
KCachegrind &#8211; <a href="http://kcachegrind.sourceforge.net/html/Home.html" target="_blank">http://kcachegrind.sourceforge.net/</a><br />
WinCacheGrind &#8211; <a href="http://sourceforge.net/projects/wincachegrind/" target="_blank">http://sourceforge.net/projects/wincachegrind/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Debugando em PHP com Wamp e NetBeans</title>
		<link>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/</link>
		<comments>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 01:23:13 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=210</guid>
		<description><![CDATA[Aprenda como configurar o Wamp e o Netbeans e seus componentes para um debug eficiente em PHP e abandonar os velhos var_dump e 'echos' de debug.]]></description>
			<content:encoded><![CDATA[<p>Hoje vou falar um pouco sobre debug no php. Um recurso pouco explorado pela maioria dos programadores php que conheço, e até por mim mesmo que apesar de ter mais de 5 anos de experiência com a linguagem, só agora resolvi fazer um debug de verdade funcionar.</p>
<p>Debugar códigos na maioria das linguagens de programação, permite que você navegue por dentro do código e suas funções na medida que o programa ou página é executada, podendo acompanhar o valor de variáveis e inclusive alterá-las, o que ajuda em 90% o desenvolvedor a encontrar falhas ou pontos específicos em uma aplicação.</p>
<p>Então vamos ao que interessa&#8230;</p>
<p>Para ser rápido, presumimos que você tenha instalado em seu ambiente windows o pacote Wamp e o NetBeans 6.5.x, ambos com suas configurações originais.</p>
<blockquote><p>- <a title="Download Wamp Server - Pacote de Servidor Apache + Mysql + PHP para Windows" href="http://www.wampserver.com/en/download.php" target="_blank">Fazer download do Wamp Server</a>.<br />
- <a title="Ferramenta visual (IDE) de desenvolvimento para PHP." href="http://www.netbeans.org/downloads/start.html?platform=windows&amp;lang=pt_BR&amp;option=php&amp;version=6.5.1" target="_blank">Fazer download do NetBeans 6.5.1  para PHP</a>.</p></blockquote>
<p>Verifique se seu Wamp está instalado corretamente executando-o e acessando o site http://localhost/ no seu navegador. Se aparecer a página do Wamp é porque tudo ocorreu direitinho.</p>
<p><img class="alignleft size-thumbnail wp-image-222" title="Adicionando exceção ao firewall do windows" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/firewall-windows-150x150.jpg" alt="Adicionando exceção ao firewall do windows" width="150" height="150" />1. A primeira coisa que vamos fazer é ir até o Firewall do windows, no Painel de Controle e adicionar a porta TCP 9000 como exceção, para evitar problemas com o debug no netbeans.</p>
<p>2. Na seqüência, abra seu NetBeans e vá ao menu Ferramentas -&gt; Opções (Tools -&gt; Options) e clique no ícone do PHP. Em seguida verifique se a porta de depuração é a 9000, e altere caso não seja. Clique em OK.</p>
<p>3. Você precisará de uma extensão de debug do php. No meu caso, utilizei o XDebug. Veja a versão do seu PHP na sua pagina inicial do Wamp Server (http://localhost/) e faça o download da .DLL na versão apropriada:</p>
<blockquote><p>- <a title="XDebug para php 5.2 VC6" href="http://www.xdebug.org/files/php_xdebug-2.0.4-5.2.8.dll" target="_blank">Faça download do XDebug para versão do PHP 5.2</a>.<br />
- <a title="XDebug para php 5.3 VC6" href="http://www.xdebug.org/files/php_xdebug-2.0.4-5.3.0-vc6.dll" target="_blank">Disponível também para versão 5.3 aqui</a>.<br />
- <a title="Outras versões do XDebug" href="http://www.xdebug.org/download.php" target="_blank">Consulte outras versões</a>.</p></blockquote>
<p>4. Coloque o arquivo DLL que acabou de baixar na pasta EXT do PHP. Se você instalou o wamp de forma padrão esta pasta será &#8220;C:\wamp\bin\php\php5.2.5\ext&#8221; ou algo parecido dependendo da versão instalada.</p>
<p>5. Feito isso, inicie o Wamp Server (caso ele não esteja iniciado), clique no ícone dele ao lado do relógio e procure pelo arquivo php.ini. (Menu: PHP-&gt;php.ini).</p>
<p>6. O arquivo abrirá no bloco de notas. Vá até o final do arquivo e adicione as linhas abaixo:</p>
<blockquote><p>[XDebug]<br />
; Only Zend OR (!) XDebug<br />
zend_extension_ts = <span style="color: #ff0000;">&#8220;C:\wamp\bin\php\php5.2.5\ext\php_xdebug-2.0.4-5.2.8.dll</span>&#8221;<br />
; XAMPP and XAMPP Lite 1.7.0 and later come with a bundled xdebug at &lt;XAMPP_HOME&gt;/php/ext/php_xdebug.dll, without a version number.<br />
xdebug.remote_enable=1<br />
xdebug.remote_host=127.0.0.1<br />
xdebug.remote_port=9000<br />
; Port number must match debugger port number in NetBeans IDE Tools &gt; Options &gt; PHP<br />
xdebug.remote_handler=dbgp<br />
xdebug.profiler_enable=1<br />
xdebug.profiler_output_dir=&#8221;c:\wamp\xdebug&#8221;</p></blockquote>
<p>Altere o caminho da dll se necessário, colocando o caminho exato da pasta e do arquivo que você acabou de fazer download no passo anterior. Ele pode variar dependendo da versão conforme falei.</p>
<p>7. Salve o arquivo e reinicie todos os serviços do wamp na opção &#8220;Reiniciar todos os serviços&#8221; que aparece no menu do relógio.</p>
<p>8. Para confirmar a instalação, acesse o link do phpinfo() que aparece na página inicial do seu wamp (http://localhost/?phpinfo=1).</p>
<p>9. Se tudo correu bem, o final do primeiro trecho do phpinfo deverá ser parecido com este:<br />
<img class="aligncenter size-full wp-image-227" title="phpinfo com xdebug instalado" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/zend-xdebug1.jpg" alt="phpinfo com xdebug instalado" width="610" height="89" /></p>
<p>Dica:  se você já tinha uma instalação anterior, certifique-se de que não há componentes de debug do zend instalados e configurados no php.ini. Os dois não se entendem muito bem.</p>
<h2>Finalmente debugando no NetBeans</h2>
<p>Se você chegou até aqui, parabéns. O mais difícil já foi (eu acho). Agora debugar fica mais fácil.</p>
<p>Abra seu NetBeans e crie um arquivo PHP qualquer ou abra um projeto existente. Diferente de outros meios de debug,<img class="size-full wp-image-229 alignright" title="marcando o breakpoint no netbeans" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/codigo1.jpg" alt="marcando o breakpoint no netbeans" width="313" height="167" /> nada precisará ser alterado no código.</p>
<p>Vá até a linha que deseja que o debug comece a ser executado e pressione Ctrl + F8 ou clique no número da linha ao lado esquerdo do código. (Veja ao lado)</p>
<p>Em seguida, mande depurar o arquivo apertando Ctrl + Shift + F5 ou indo ao menu &#8220;Depurar -&gt; Depurar <em>arquivo</em>.php&#8221;.</p>
<p>Na janela que se abrirá marque a opção PHP do lado do servidor.</p>
<p><img class="alignleft size-full wp-image-231" title="breakpoint no netbeans" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/codigo2.jpg" alt="breakpoint no netbeans" width="270" height="78" />Uma nova janela do navegador se abrirá e a execução irá parar no ponto de interrupção que determinamos com uma setinha verde apontando a linha do código que está sendo executada.  Você pode alterar o valor das variáveis em tempo de execução, ou criar observadores (watchers) para elas.</p>
<p>Para continuar a execução basta apertar F5 ou o botão <img class="alignnone size-full wp-image-232" title="continue-debugging-session" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/continue-debugging-session.png" alt="continue-debugging-session" width="30" height="30" /> no próprio NetBeans.</p>
<p>Isso tudo que falei é apenas o básico do processo de debug que o netbeans permite fazer. Existem outros métodos como utilizando o plugin FirePhp para o Firefox, mas não falarei disso desta vez.</p>
<p>Espero que esta seja uma boa alternativa pra você no lugar dos velhos &#8216;echos&#8217; perdidos no seu código fonte. <img src='http://www.ricardomartins.info/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<blockquote><p>Para ver e aprender mais sobre o assunto, <a title="Debugging no NetBeans" href="http://www.netbeans.org/kb/docs/php/debugging.html" target="_blank">veja a matéria sobre debugging na página especial da netbeans </a>(em inglês). Tem um passo-a-passo do processo de debug bem bacana.</p></blockquote>
<p><strong>Update (09-dez-2009):</strong> as versões que sugeri para download são para PHP&#8217;s compilados com VC6. Veja qual a forma de compilação do seu php no phpinfo(), no item &#8216;Compiler&#8217;. Ex: MSVC6 (Visual C++ 6.0)  corresponde ao VC6 do Xdebug. Baixe a versão adequada ao seu PHP, não esquecendo de substituir o nome da DLL no php.ini confome mostrado acima.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>I Encontro PHPSP</title>
		<link>http://www.ricardomartins.info/blog/eventos/i-encontro-phpsp/</link>
		<comments>http://www.ricardomartins.info/blog/eventos/i-encontro-phpsp/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 18:40:43 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Eventos]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=166</guid>
		<description><![CDATA[Primeiro encontro da comunidade PHPSP em São Paulo na Burti Mooca.]]></description>
			<content:encoded><![CDATA[<p>Neste Sábado(7-fev) estive em São Paulo, no primeiro encontro do <a title="Ir para página do PHPSP" href="http://www.phpsp.org.br/" target="_blank">grupo PHPSP</a>, comunidade de programadores de <a title="Ver definição dePHP no Wikipedia" href="http://pt.wikipedia.org/wiki/php" target="_blank">PHP </a>(linguagem de programação web) que existe desde 2002 e surgiu a partir de um grupo de discussão do Yahoo!.</p>
<p><img class="alignright size-medium wp-image-168" title="I PHPSP - O Almoço" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/02/07022009015-300x225.jpg" alt="I PHPSP - O Almoço" width="300" height="225" />Tive o prazer de conhecer e reencontrar pessoas que trabalharam na RCT, empresa por onde passei e fiz boas amizades. No evento contamos com apresentações sobre o <a title="Página do Zend Framework" href="http://framework.zend.com/" target="_blank">Zend Framework</a> e sobre a <a title="Site oficial da Certificação Zend (ZCE)" href="http://www.zend.com/en/services/certification/" target="_blank">certificação Zend</a> (empresa que criou a linguagem), com os 4 profissionais certificados: Augusto Pascutti, Anderson Casimiro, Ivo Nascimento, Marcelo Toscano e Rafel Dohms. Eles fazem parte do grupo de 54 programadores certificados em PHP do Brasil.</p>
<p>Com uma estrutura bacana cedida pela <a title="Ir para o site da Burti Impressões" href="http://www.burti.com.br/" target="_blank">empresa Burti</a>, pude matar um pouco a saudade da linguagem e ver o quanto falta para chegar a uma certificação deste tipo. A certificação Zend é algo realmente complexo e cheia de pegadinhas. Durante 3 horas do evento realizamos um simulado da certificação além de participar de sorteios de brindes, descontos e vouchers para certificação.</p>
<p><img class="alignleft size-medium wp-image-167" title="I PHPSP" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/02/07022009010-300x225.jpg" alt="I PHPSP" width="300" height="225" />Desde que entrei na <a title="Site do programa de fidelidade Dotz" href="http://www.dotz.com.br/" target="_blank">Dotz</a>, só programo em PHP quando estou em casa, nos meus projetos pessoais como o novo <a title="Sexshop Oitavo Pecado" href="http://www.oitavopecado.com.br/" target="_blank">e-commerce da Oitavo Pecado</a>.</p>
<p>Neste evento pude concluir que o PHP evoluiu bastante, ou melhor, sempre foi melhor do que imaginei. Todos os recursos e críticas que os programadores de outras linguagens fazem a respeito foram rebatidas. Fora do país, o PHP já é usado por grandes empresas como bancos, geradoras de energia, e muitas outras empresas (Digg, Yahoo!, Facebook, etc).</p>
<p>O que ocorre no Brasil é que a maioria dos programadores da linguagem são os famosos &#8217;sobrinhos&#8217;¹, que queimam a linguagem em aplicações e sites frágeis e mal programados. Vejo este como sendo o lado negativo de termos uma linguagem de fácil aprendizagem.</p>
<p>Parafraseando o palestrante <a title="Sie do Edgar - ManjaPHP" href="http://www.manjaphp.com.br/" target="_blank">Edgar Ferreira</a>, que falou sobre o Zend Framework, posso dizer que: PHP é pequeno quando usado em aplicações simples, mas robusto quando precisamos que ele seja assim. Ele apenas funciona.</p>
<p>Não é raro ouvir casos de sucesso em performance com a dupla PHP + MySQL a um custo extremamente baixo se comparado com SQL Server + .NET.</p>
<p>O evento foi uma desconferência animada e que terminou num evento informal chamado PHPinga, que dispensa definições.</p>
<p>Vamos ver se isso foi o suficiente para abrir o apetite por uma certificação da Zend. Pelo menos a revista PHP Architect eu fiquei com vontade de assinar&#8230;</p>
<h6>¹sobrinhos &#8211; termo usado no evento para se referir à maioria de programadores curiosos na linguagem e que queimam a credibilidade da mesma com trabalhos ruins.</h6>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/eventos/i-encontro-phpsp/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>1a desconferência de PHP do PHPSP em São Paulo</title>
		<link>http://www.ricardomartins.info/blog/eventos/1o-encontro-php-do-phpsp-em-sao-paulo/</link>
		<comments>http://www.ricardomartins.info/blog/eventos/1o-encontro-php-do-phpsp-em-sao-paulo/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 23:56:45 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Eventos]]></category>
		<category><![CDATA[palestras]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=114</guid>
		<description><![CDATA[Primeiro encontro da comunidade PHPSP em São Paulo.]]></description>
			<content:encoded><![CDATA[<p>A comunidade <a href="http://phpsp.org.br/" target="_blank">PHPSP</a> reúne programadores PHP de todo estado de SP está organizando o primeiro encontro da comunidade.<br />
Quando: 07/02/2009<br />
Onde: Burti Mooca ( Rua Dias Leme 130 &#8211; Moóca &#8211; São Paulo )<br />
Valor: 1Kg de alimento não-perecível</p>
<p>O evento terá simulados da certificação Zend e palestras sobre o Zend Framework.</p>
<p>Para realizar a inscrição é necessário fazer o cadastro no site<br />
<a href="http://phpsp.org.br/i-encontrophpsp" target="_blank">http://phpsp.org.br/i-encontrophpsp</a></p>
<p>Eu estarei lá matando a saudade e me atualizando. E você?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/eventos/1o-encontro-php-do-phpsp-em-sao-paulo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
