<?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>bittersweet dev &#187; PHP</title>
	<atom:link href="http://blog.hboaventura.com/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.hboaventura.com</link>
	<description>'cause that's the dev life</description>
	<lastBuildDate>Wed, 12 May 2010 02:29:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>PHP: Integrando o Twitter ao seu Site &#8211; Parte 2</title>
		<link>http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-2/</link>
		<comments>http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-2/#comments</comments>
		<pubDate>Wed, 12 May 2010 02:22:36 +0000</pubDate>
		<dc:creator>kidh0</dc:creator>
				<category><![CDATA[Sem categoria]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://blog.hboaventura.com/?p=297</guid>
		<description><![CDATA[Continuando o artigo anterior, hoje vamos dar mais um passo na integração do twitter ao seu site. Neste artigo vou mostrar como podemos enviar tweets direto do seu site usando a biblioteca cURL do PHP. Se você não está familiarizado com essa biblioteca, não se preocupe, vamos dar um jeito de fazer parte da familia [...]

<br/><br/>
<strong>  Leia também:</strong><ol><li><a href='http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-1/' rel='bookmark' title='Permanent Link: PHP: Integrando o Twitter ao seu site &#8211; Parte 1'>PHP: Integrando o Twitter ao seu site &#8211; Parte 1</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-292" title="twitter_bird" src="http://blog.hboaventura.com/wp-content/uploads/2010/04/twitter_bird.jpg" alt="" width="210" height="174" />Continuando o artigo anterior, hoje vamos dar mais um passo na integração do <a title="Home do Twitter" href="http://www.twitter.com">twitter</a> ao seu site. Neste artigo vou mostrar como podemos enviar tweets direto do seu site usando a biblioteca <a href="http://www.php.net/manual/en/book.curl.php">cURL</a> do <a href="http://www.php.net">PHP</a>.</p>
<p>Se você não está familiarizado com essa biblioteca, não se preocupe, vamos dar um jeito de fazer parte da familia <img src='http://blog.hboaventura.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h2>Parte 2: Atualizando sua timeline</h2>
<p>Como diria a bruxa do desenho do Pica-Pau (lembre-se, desenho!): &#8220;E lá vamos nós!&#8221;. Para começar, uma explicação básica do que é a biblioteca cURL e seu processo de instalação.</p>
<h3>cURL</h3>
<p>cURL(Client URL Reques Library) na <a href="http://en.wikipedia.org/wiki/CURL">wikipedia</a>: &#8220;cURL é um projeto de sofware que fornece uma biblioteca e uma ferramenta de linha de comando para transferir dados usando vários protocolos&#8221;. Ele nos permite, basicamente, fazer requisições para uma URL e recuperar o resultado dessa requisição. Podemos também adicionar parâmetros a ela.</p>
<p>O PHP tem uma biblioteca para usar o CURL. A instalação é bem simples. No Ubuntu basta digitar a seguinte no terminal:</p>
<pre class="text" name="code">sudo apt-get update &amp;&amp; sudo apt-get install curl php5-curl</pre>
<p>Com isso você tem tanto a ferramenta para linha de comando quanto a biblioteca para PHP instaladas na sua máquina.</p>
<p>Um teste bem simples para ver o cURL funcionando é digitar o seguinte no terminal:</p>
<pre class="text" name="code">curl http://www.hboaventura.com</pre>
<p>O retorno vai ser o código-fonte do meu site no seu terminal. Não vou me estender muito na cURL, tem bastante conteúdo na web, just <a href="http://www.google.com/search?client=ubuntu&amp;channel=fs&amp;q=curl&amp;ie=utf-8&amp;oe=utf-8">google</a> it!</p>
<h3>Usando o php-curl para enviar tweets</h3>
<p>Com o ambiente pronto, podemos agora focar na integração com o PHP que o pacote php5-curl adiciona ao nosso server. Basicamente, para enviar um tweet, você vai precisar:</p>
<ul>
<li>seu usuário (d&#8217;oh);</li>
<li>sua senha (tinha dúvidas sobre isso ainda?);</li>
<li>a mensagem que você quer tweetar (até vou procurar no dicionário se isso já virou um verbete);</li>
</ul>
<p>Assim como no outro <a href="http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-1/">artigo</a>, a explicação é maior do que o código propriamente dito. Com esses dados a mão, o que temos que fazer é usar algumas funções do <a href="http://www.php.net/manual/en/book.curl.php">php-cURL</a> para &#8220;embuti-los&#8221; na requisição. Vamos ao que importa (código!):</p>
<pre class="php" name="code">$usuario = 'kidh0';
$senha = 'hahaNoWay!';
$mensagem = 'Wow! Meu primeiro tweet via API';

$url = 'http://twitter.com/statuses/update.xml';

$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_POST, true);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, 'status='.$mensagem);
curl_setopt($curl_handle, CURLOPT_USERPWD, $usuario.':'.$senha);
$resultado = curl_exec($curl_handle);
curl_close($curl_handle);
</pre>
<p>Explicando a coisa toda:</p>
<ul>
<li>Linhas 1 a 3: Basicamente coloquei em atributos os dados necessários para a requisição;</li>
<li>Linha 5: URL para qual é feita a requisição (envio do tweet). Note que o arquivo requisitado é um <a href="http://en.wikipedia.org/wiki/XML">XML</a>, por isso o retorno é um <a href="http://en.wikipedia.org/wiki/XML">XML</a>, mas a <a href="http://api.twitter.com">API</a> do Twitter também aceita o formato <a href="http://en.wikipedia.org/wiki/JSON">JSON</a>, retornando, obviamente, uma string <a href="http://en.wikipedia.org/wiki/JSON">JSON</a>;</li>
<li>Linha 7: Inicia uma nova sessão e retorna o handler cURL para ser usado com as outras funções, <a href="http://www.php.net/manual/en/function.curl-init.php">leia mais;</a>* Linha 9: Seta a requisição para ser um POST HTTP;</li>
<li>Linha 10: Ao setar para true, retornará o resultado de <a href="http://www.php.net/manual/en/function.curl-exec.php">curl_exec()</a> como uma string, se estiver false, vai jogar na tela direto;</li>
<li>Linha 11: Seta para 30 o número de segundos para esperar enquanto tenta conectar;</li>
<li>Linha 12: Adiciona um campo para o POST chamado status com o conteudo da variável $mensagem;</li>
<li>Linha 13: Seta o usuário e senha para a validação da requisição;</li>
<li> Linha 14: Atribui a variável $resultado o resultado da requisição. Vale lembrar aqui que o retorno, em caso de sucesso, vai ser um <a href="http://en.wikipedia.org/wiki/XML">XML</a> com todas os atributos do status. Em caso de erro, retornará a mensagem referente;</li>
<li>Linha 15: Fecha a conexão, mas não é necessário;</li>
</ul>
<p>Para manipular a variável $resultado (lógico, se você optou por retornar um <a href="http://en.wikipedia.org/wiki/XML">XML</a>) podemos usar nosso bom amigo <a href="http://www.php.net/manual/en/book.simplexml.php">SimpleXML</a> que foi usado no post <a href="http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-1/">anterior</a>).</p>
<p>Com isso temos uma simples mas funcional integração de envio de tweets direto do seu site para o Twitter, prático e rápido.</p>
<p>No próximo artigo (e final, at least!), vamos fazer uma classe para trabalhar com o que vimos até agora, colocando um plus a mais <img src='http://blog.hboaventura.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> . Até o próximo artigo!</p>


<br/><br/><p><strong>  Leia também:</strong><ol><li><a href='http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-1/' rel='bookmark' title='Permanent Link: PHP: Integrando o Twitter ao seu site &#8211; Parte 1'>PHP: Integrando o Twitter ao seu site &#8211; Parte 1</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.hboaventura.com/php-integrando-o-twitter-ao-seu-site-parte-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP: Usando a Classe DateTime para manipular datas</title>
		<link>http://blog.hboaventura.com/php-usando-a-classe-datetime-para-manipular-datas/</link>
		<comments>http://blog.hboaventura.com/php-usando-a-classe-datetime-para-manipular-datas/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 18:12:14 +0000</pubDate>
		<dc:creator>kidh0</dc:creator>
				<category><![CDATA[Sem categoria]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WebDev]]></category>

		<guid isPermaLink="false">http://blog.hboaventura.com/?p=241</guid>
		<description><![CDATA[Quem em algum momento da vida já precisou trabalhar com datas em PHP, seja comparação ou manipulação, sabe que isso é uma grande dor de cabeça. Não que isso seja difícil de fazer, mas o PHP (até a versão 5.2, pelo menos) não tinha suporte a operações com data. Sempre que era necessário fazer uma [...]

<br/><br/>
<strong>Sem Posts Relacionados.</strong>]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-233 alignleft" title="php" src="http://blog.hboaventura.com/wp-content/uploads/2009/07/php-300x158.png" alt="PHP" width="210" height="111" /></p>
<p>Quem em algum momento da vida já precisou trabalhar com datas em PHP, seja comparação ou manipulação, sabe que isso é uma grande dor de cabeça. Não que isso seja difícil de fazer, mas o PHP (até a versão 5.2, pelo menos) não tinha suporte a operações com data. Sempre que era necessário fazer uma verificação se uma data era maior que outra, ou adicionar dias, era uma gambiarra sem fim. E gambiarra é ruim, muito ruim.</p>
<p>Eis que a versão 5.2 do PHP trás uma novidade que acalmou os já saturados nervos de quem necessita desse tipo de controle em seus sistemas. Foram adicionadas ao core do PHP, 4 classes para dar o suporte necessário a manipulação de datas:</p>
<ul>
<li> <a href="http://br.php.net/manual/en/class.datetime.php">DateTime</a></li>
<li> <a href="http://br.php.net/manual/en/class.dateinterval.php">DateInterval</a></li>
<li><a href="http://br.php.net/manual/en/class.dateperiod.php">DatePeriod</a></li>
<li><a href="http://br.php.net/manual/en/class.datetimezone.php">DateTimeZone</a></li>
</ul>
<p>Como não tem nenhuma necessidade de replicar a documentação do PHP (que já é bem completa), não vou colocar todos os métodos e atributos que cada classe tem, caso tenha curiosidade (e todo desenvolvedor deve ter), clique nos links e leia a doc de cada uma delas.</p>
<p>Vamos então colocar em prática cada uma dessas classes. Show me the code!</p>
<h2>Criando e exibindo uma data formatada</h2>
<p>Vamos começar então criando um objeto do tipo DateTime e exibindo ele formatado na tela:</p>
<h3>Exemplo 1</h3>
<pre class="php" name="code">//Cria o objeto do tipo DateTime, se não passar
// nada no construtor, assume now;
$date_now = new DateTime();
//usando as constantes da classe DateTime
echo $date_now-&gt;format(DATE_RSS);
//mostra Fri, 23 Oct 2009 14:27:51 -0200</pre>
<ul>
<li> Linha 3: criamos o objeto sem atribuir nada, com isso, ele assume a data atual(now) do sistema.</li>
<li>Linha 5: usamos a função <a href="http://br.php.net/manual/en/datetime.format.php">format()</a> utilizando as <a href="http://br.php.net/manual/en/class.datetime.php#datetime.constants.types">constantes</a> da classe DateTime</li>
</ul>
<h3>Exemplo 2</h3>
<pre class="php" name="code">//Cria o objeto do tipo DateTime, atribuindo uma string
//usando o formato suportado pela funcao strtotime()
$date_build = new DateTime('2009-10-10');
//usando o formato suportado pela funcao date()
echo $date_build-&gt;format('d/m/Y');
//mostra 10/10/2009</pre>
<ul>
<li> Linha 3: criamos o objeto atribuindo uma string num formato suportado pela função <a href="http://br.php.net/manual/en/function.strtotime.php">strtotime()</a></li>
<li>Linha 5: usamos a função <a href="http://br.php.net/manual/en/datetime.format.php">format()</a>, mas dessa vez, especificamos o formato da data conforme a função <a href="http://br.php.net/manual/en/function.date.php">date()</a></li>
</ul>
<p>Até agora, nenhuma novidade, já podíamos fazer isso antes até com menos esforço(!?), mas o pulo do gato (não me pergunte de onde tirei esse jargão) ainda está por vir&#8230;</p>
<h2>Comparação entre datas</h2>
<p>Uma outra melhoria que essa classe nos trás é a comparação de datas. Antes, tinhamos um trabalho tremendo para fazer comparação de datas:<br />
Exemplo de POG:</p>
<pre class="php" name="code">$date1 = str_replace('-','','2009-10-10');
$date2 = str_replace('-','','2009-10-12');
if ($date1 &gt; $date2) {
    //faz algo macabro
}</pre>
<p>E isso é chato, e deixa seu código horrível.</p>
<p>Veja como ficou simples fazer a comparação de data usando o DateTime()</p>
<h3>Exemplo</h3>
<pre class="php" name="code">$date1 = new DateTime('2009-10-10');
$date2 = new DateTime('2009-12-10');
if ($date1 &lt; $date2) {
    //faz algo de uma maneira correta
}</pre>
<p>Sim! A comparação é feita direto entre os objetos, como mágica (brincadeira, é lógica pura)! Isso é uma das features que mais me chamaram a atenção, justamente pela simplicidade do uso. Mas a melhor parte ainda está por vir&#8230;</p>
<h2>Intervalo entre datas</h2>
<p>Eu não me lembro de ter feito isso em PHP (ainda bem) mas calcular o intervalo entre datas também foi facilitado:</p>
<pre class="php" name="code">$date1 = new DateTime('2009-10-10');
$date2 = new DateTime('2010-10-10');

//calcula a diferenca entre as duas datas
$diff = $date1-&gt;diff($date2);

//mostra o numero de dias entre as datas
echo $diff-&gt;days . ' dias ';</pre>
<ul>
<li>Linha 1 e 2: Cria duas datas do tipo DateTime;</li>
<li>Linha 5: O metodo <a href="http://br.php.net/manual/en/datetime.diff.php">diff()</a> da classe DateTime retorna um objeto do tipo <a href="http://br.php.net/manual/en/class.dateinterval.php">DateInterval</a>;</li>
<li>Linha 8: Retorna a quantidade de dias entre as datas</li>
</ul>
<h2>Manipulação de datas</h2>
<p>Agora o santo graal em se tratando de datas no PHP, a manipulação de datas, ou seja, poder adicionar/subtrair dias, meses, anos, whatever de uma data:</p>
<h3>Exemplo 1</h3>
<pre class="php" name="code">$date1 = new DateTime('2009-10-10');
//imprime 10/10/2009
echo $date1-&gt;format('d/m/Y');

//adiciona 1 semana na data
$date1-&gt;add(new DateInterval('P1W'));
//imprime 17/10/2009
echo $date1-&gt;format('d/m/Y');

//remove 2 dias da data
$date1-&gt;sub(new DateInterval('P2D'));
//imprime 15/10/2009
echo $date1-&gt;format('d/m/Y');</pre>
<p>Tanto o método <a href="http://br.php.net/manual/en/datetime.add.php">add()</a> quando o método <a href="http://br.php.net/manual/en/datetime.sub.php">sub()</a> esperam receber um objeto do tipo <a href="http://br.php.net/manual/en/class.dateinterval.php">DateInterval</a>. O DateInterval cria um intervalo de datas e recebe como parametro, que deve sempre iniciar por &#8220;P&#8221; (sem as aspas, de Período) seguido pelo periodo, por exemplo P1M (periodo de 1 mês). Na <a href="http://br.php.net/manual/en/dateinterval.construct.php">documentação</a> do construtor do objeto tem todas as opções aceitas.</p>
<h3>Exemplo 2</h3>
<p>Também podemos usar o método <a href="http://br.php.net/manual/en/datetime.modify.php">modify()</a> para fazer essa manipulação da data.</p>
<pre class="php" name="code">$date1 = new DateTime('2009-10-10');
//imprime 10/10/2009
echo $date1-&gt;format('d/m/Y');

//adiciona 1 semana na data
$date1-&gt;modify('+1 week');
//imprime 17/10/2009
echo $date1-&gt;format('d/m/Y');

//remove 2 dias da data
$date1-&gt;modify('-2 days');
//imprime 15/10/2009
echo $date1-&gt;format('d/m/Y');</pre>
<p>A diferença é que o método modify() recebe qualquer string aceita no método strtotime(), não necessitando instanciar um objeto DateInterval.</p>
<p>Bueno, por hoje é só pessoal, prometo não demorar tanto no próximo artigo, até porque o PHP 5.3 tem várias novidades muito interessantes. Aguardem&#8230;</p>


<br/><br/><p><strong>Sem Posts Relacionados.</strong></p>]]></content:encoded>
			<wfw:commentRss>http://blog.hboaventura.com/php-usando-a-classe-datetime-para-manipular-datas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PHP: Instalando a extensão SVN no Ubuntu 9.04</title>
		<link>http://blog.hboaventura.com/php-instalando-a-extensao-svn-no-ubuntu-9-04/</link>
		<comments>http://blog.hboaventura.com/php-instalando-a-extensao-svn-no-ubuntu-9-04/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 02:30:43 +0000</pubDate>
		<dc:creator>kidh0</dc:creator>
				<category><![CDATA[Sem categoria]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.hboaventura.com/?p=225</guid>
		<description><![CDATA[Recentemente estive envolvido em um projeto que necessitava interagir com um repositório SVN (controle de versão? Não tem idéia do que é isso? Dê uma lida neste artigo). Era o básico, checkout e commit de arquivos, nada muito complexo. Para minha surpresa, o PHP não tem nenhuma função nativa de acesso a repositórios SVN, então [...]

<br/><br/>
<strong>  Leia também:</strong><ol><li><a href='http://blog.hboaventura.com/instalando-o-firefox-3-5-no-ubuntu-9-04/' rel='bookmark' title='Permanent Link: [update] Instalando o Firefox 3.5 no Ubuntu 9.04'>[update] Instalando o Firefox 3.5 no Ubuntu 9.04</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-233 alignleft" style="margin: 5px;" title="php" src="http://blog.hboaventura.com/wp-content/uploads/2009/07/php-300x158.png" alt="PHP" width="240" height="126" /></p>
<p>Recentemente estive envolvido em um projeto que necessitava interagir com um repositório SVN (controle de versão? Não tem idéia do que é isso? Dê uma lida neste <a href="http://pt.wikipedia.org/wiki/Sistema_de_controle_de_vers%C3%A3o" target="_blank">artigo</a>). Era o básico, checkout e commit de arquivos, nada muito complexo. Para minha surpresa, o PHP não tem nenhuma função nativa de acesso a repositórios SVN, então a busca pela iluminação começou.</p>
<p>Primeiro pensei em usar a função exec() e só passar os comandos para ela. Isso resolve, mas é um tanto quando deselegante, pessoalmente achei até um pouco grosseiro, além de que rodar um exec() no servidor nunca é bem visto. <span style="text-decoration: line-through;">Mas funciona!</span></p>
<p>Como a idéia é sempre a melhor implementação (ou pelo menos o mais próximo possível disso), continuei minhas buscas pelo <a href="http://www.google.com" target="_blank">oráculo</a>. Acabei me deparando com uma extensão <a href="http://pecl.php.net/" target="_blank">PECL</a> que fazia exatamente o que eu precisava, a <a href="http://us3.php.net/manual/en/book.svn.php" target="_blank">PHP SVN</a>.</p>
<p>Dentre a lista de funções existentes, estão as funções básicas que eu precisava, checkout e commit , até mais avançadas, com parâmetros para a autenticação em servidores que requerem tal segurança.</p>
<h3>Instalação</h3>
<p>A instalação via <a href="http://pecl.php.net/" target="_blank">PECL</a> é bem simples, se não fosse por alguns problemas de dependência  que encontrei pelo caminho. Como não há necessidade alguma de vocês passarem pelos mesmos &#8220;apertos&#8221; pelos quais eu passei, segue o passo a passo:</p>
<h4>1º Passo &#8211; As dependências</h4>
<p>Existem algumas dependências necessárias para instalar o pacote PECL do SVN, segue o comando para instalar todas:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> update <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> php5-dev libsvn-dev \
libsasl2-dev libsasl2-modules-ldap libneon27-gnutls-dev</pre></div></div>

<h4>2º Passo &#8211; O pacote PECL</h4>
<p>Depois de as dependências todas estarem instaladas, vamos para a instalação do pacote PECL SN:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> pecl <span style="color: #c20cb9; font-weight: bold;">install</span> <span style="color: #660033;">-f</span> <span style="color: #c20cb9; font-weight: bold;">svn</span></pre></div></div>

<h4>3º Passo &#8211; Configurando o PHP.ini</h4>
<p>Para finalizar, como super usuário, digite o seguinte comando no terminal:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">extension</span>=svn.so <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>php5<span style="color: #000000; font-weight: bold;">/</span>apache2<span style="color: #000000; font-weight: bold;">/</span>php.ini</pre></div></div>

<p>Feito isso, para o apache reconhecer a extensão, ele deve ser reiniciado:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> apache2ctl restart</pre></div></div>

<p>Pronto! Já estão disponíves no servidor as <a href="http://us3.php.net/manual/en/ref.svn.php" target="_blank">funções</a> da extensão em seus scripts.</p>
<p>Referências:</p>
<ul>
<li><a href="http://us3.php.net/manual/en/book.svn.php" target="_blank">http://us3.php.net/manual/en/book.svn.php</a></li>
<li><a href="http://ubuntuforums.org/showthread.php?p=2143883" target="_blank">http://ubuntuforums.org/showthread.php?p=2143883</a></li>
<li><a href="http://hasin.wordpress.com/2008/04/21/installing-pecl-subversion-extension-for-php-in-ubuntu-710/" target="_blank">http://hasin.wordpress.com/2008/04/21/installing-pecl-subversion-extension-for-php-in-ubuntu-710/</a></li>
</ul>


<br/><br/><p><strong>  Leia também:</strong><ol><li><a href='http://blog.hboaventura.com/instalando-o-firefox-3-5-no-ubuntu-9-04/' rel='bookmark' title='Permanent Link: [update] Instalando o Firefox 3.5 no Ubuntu 9.04'>[update] Instalando o Firefox 3.5 no Ubuntu 9.04</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.hboaventura.com/php-instalando-a-extensao-svn-no-ubuntu-9-04/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
