<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comentários sobre: Outros lugares onde pode usar o &#8220;or&#8221; no PHP</title>
	<atom:link href="http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/</link>
	<description>Tutoriais sobre: XHTML, CSS, JavaScript e WebStandards</description>
	<lastBuildDate>Sat, 11 Feb 2012 13:45:15 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>Por: trambulhao</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-239942</link>
		<dc:creator>trambulhao</dc:creator>
		<pubDate>Mon, 17 Oct 2011 16:38:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-239942</guid>
		<description>Contribuindo.. :P 

$zebra = true;
for ($i = 0; $i &lt; 10; $i++):
echo $i, ($zebra) ? &#039; par&#039; : &#039; ímpar&#039;, &#039;&#039;;
$zebra = !$zebra;
endfor;</description>
		<content:encoded><![CDATA[<p>Contribuindo.. :P </p>
<p>$zebra = true;<br />
for ($i = 0; $i &lt; 10; $i++):<br />
echo $i, ($zebra) ? &#039; par&#039; : &#039; ímpar&#039;, &#039;&#8217;;<br />
$zebra = !$zebra;<br />
endfor;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Tivira</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-144567</link>
		<dc:creator>Tivira</dc:creator>
		<pubDate>Mon, 27 Apr 2009 19:37:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-144567</guid>
		<description>Parabéns pelo post, muito interessante!</description>
		<content:encoded><![CDATA[<p>Parabéns pelo post, muito interessante!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Diogo</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-135524</link>
		<dc:creator>Diogo</dc:creator>
		<pubDate>Tue, 07 Apr 2009 14:53:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-135524</guid>
		<description>Anderson, entendo que o or para na primeira verificação que retornar true ...

mas foi o que eu disse, a sentença do @Carlos André Ferrari pode ser invertida que apresentará o mesmo resultado. Mas mesmo no caso dele existe falha, nao se deve verificar variavel com apenas um if($a or $b or $c) ... a variavel pode existir e ter o valor false. O ideal é usar isset(). Mas creio que aquilo foi um exemplo rapido.

uma explicação simples de como isso so funciona por causa da precendencia é o exemplo:
$bd = mysqli_connect(xxx) or die(&quot;erro no banco&quot;);

essa sentença so é executada com sucesso pq está dessa maneira; pq se for invertida o die é executado diretamente.

Uma sentença or, ao meu ver, é que nem aquela regrinha mais básica de multiplicaçao: &quot;a ordem dos fatores nao altera o resultado&quot;. Desse jeito que foi apresentado, funciona, mas qq modificaçao ela pode apresentar algum problema ... 

Realmente me expressei mal, a intenção era dizer para tomarem cuidado e utilizarem somente dessa forma, pq de qq outra ela parará de funcionar automaticamente.
É so uma preocaução, pq ao divulgarmos uma materia, nos tornamos exemplos, entao todo cuidado é pouco !

Desculpe qq mal entendido ! Abraços !</description>
		<content:encoded><![CDATA[<p>Anderson, entendo que o or para na primeira verificação que retornar true &#8230;</p>
<p>mas foi o que eu disse, a sentença do @Carlos André Ferrari pode ser invertida que apresentará o mesmo resultado. Mas mesmo no caso dele existe falha, nao se deve verificar variavel com apenas um if($a or $b or $c) &#8230; a variavel pode existir e ter o valor false. O ideal é usar isset(). Mas creio que aquilo foi um exemplo rapido.</p>
<p>uma explicação simples de como isso so funciona por causa da precendencia é o exemplo:<br />
$bd = mysqli_connect(xxx) or die(&#8220;erro no banco&#8221;);</p>
<p>essa sentença so é executada com sucesso pq está dessa maneira; pq se for invertida o die é executado diretamente.</p>
<p>Uma sentença or, ao meu ver, é que nem aquela regrinha mais básica de multiplicaçao: &#8220;a ordem dos fatores nao altera o resultado&#8221;. Desse jeito que foi apresentado, funciona, mas qq modificaçao ela pode apresentar algum problema &#8230; </p>
<p>Realmente me expressei mal, a intenção era dizer para tomarem cuidado e utilizarem somente dessa forma, pq de qq outra ela parará de funcionar automaticamente.<br />
É so uma preocaução, pq ao divulgarmos uma materia, nos tornamos exemplos, entao todo cuidado é pouco !</p>
<p>Desculpe qq mal entendido ! Abraços !</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Anderson Custódio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-135244</link>
		<dc:creator>Anderson Custódio</dc:creator>
		<pubDate>Tue, 07 Apr 2009 05:38:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-135244</guid>
		<description>Eu ia explicar como o or é aplicado nos exemplos, mas no lugar de atualizar vou fazer outro post mais completo explicando todos os detalhes.</description>
		<content:encoded><![CDATA[<p>Eu ia explicar como o or é aplicado nos exemplos, mas no lugar de atualizar vou fazer outro post mais completo explicando todos os detalhes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Anderson Custódio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-135233</link>
		<dc:creator>Anderson Custódio</dc:creator>
		<pubDate>Tue, 07 Apr 2009 05:18:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-135233</guid>
		<description>@Diogo Olha o primerio comentário do  @Carlos André Ferrari que você vai entender como funciona o or.</description>
		<content:encoded><![CDATA[<p>@Diogo Olha o primerio comentário do  @Carlos André Ferrari que você vai entender como funciona o or.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Alexandre Broggio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-135095</link>
		<dc:creator>Alexandre Broggio</dc:creator>
		<pubDate>Tue, 07 Apr 2009 00:05:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-135095</guid>
		<description>interessante ^_^</description>
		<content:encoded><![CDATA[<p>interessante ^_^</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Diogo</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-135068</link>
		<dc:creator>Diogo</dc:creator>
		<pubDate>Mon, 06 Apr 2009 22:55:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-135068</guid>
		<description>Bom, 
pra mim uma sentença com &quot;or&quot; válida pode ser invertida sem alterar seu resultado. Aliás, essa é a idéia. 

Mas como o artigo é demonstrativo, nao vou entrar em mais delongas...</description>
		<content:encoded><![CDATA[<p>Bom,<br />
pra mim uma sentença com &#8220;or&#8221; válida pode ser invertida sem alterar seu resultado. Aliás, essa é a idéia. </p>
<p>Mas como o artigo é demonstrativo, nao vou entrar em mais delongas&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Anderson Custódio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134995</link>
		<dc:creator>Anderson Custódio</dc:creator>
		<pubDate>Mon, 06 Apr 2009 19:35:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134995</guid>
		<description>file_exists(&#039;tpl.php&#039;) or die(’Arquivo não encontrado’);  Está certo, se não tiver &lt;strong&gt;tpl.php&lt;/strong&gt; no mesmo diretório onde se encontra o arquivo de teste vai aparecer &lt;strong&gt;Arquivo não encontrado&lt;/strong&gt;&lt;strong&gt;, &lt;/strong&gt;&lt;strong&gt;die&lt;/strong&gt; e &lt;strong&gt;exit&lt;/strong&gt; são a mesma coisa, logo se você colocar ele antes do or vai parar o código e mostrar a mensagem.</description>
		<content:encoded><![CDATA[<p>file_exists(&#8216;tpl.php&#8217;) or die(’Arquivo não encontrado’);  Está certo, se não tiver <strong>tpl.php</strong> no mesmo diretório onde se encontra o arquivo de teste vai aparecer <strong>Arquivo não encontrado</strong><strong>, </strong><strong>die</strong> e <strong>exit</strong> são a mesma coisa, logo se você colocar ele antes do or vai parar o código e mostrar a mensagem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Diogo</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134938</link>
		<dc:creator>Diogo</dc:creator>
		<pubDate>Mon, 06 Apr 2009 17:26:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134938</guid>
		<description>Bom Anderson, 
nao é tao simples assim. Achei um problema nos seus exemplos. Uma coisa que poucas pessoas conhecem e estudam e a precedencia dos sinais de comparaçao.

O exemplo file_exists(&#039;tpl.php&#039;) or die(&#039;Arquivo não encontrado&#039;); nao é valido, pq caso seja invertido:
die(&#039;Arquivo não encontrado&#039;) or file_exists(&#039;tpl.php&#039;);
mesmo o arquivo existindo ele apresentará a mensagem &quot;Arquivo não encontrado&quot;.

A explicação fica mais facil se fizermos assim:
$retorno = false or true;
var_dump($retorno);

qual a resposta ?
true, certo ?
 nao ... a resposta é false. Pq ?? Simples, a precendencia do sinal de &quot;=&quot; e maior que a do &quot;or&quot;, por isso ele recebe o valor false antes da comparação..

A solução é trocar o sinal &quot;or&quot; pelo sinal que trabalha bit a bit que é o &quot;&#124;&#124;&quot;
$retorno = false &#124;&#124; true;
var_dump($retorno);  //true

agora sim a sentença apresenta o valor esperado. Quando estudei isso nunca mais usei operadores como &quot;or&quot; e &quot;and&quot; ... 

T+ pessoal !</description>
		<content:encoded><![CDATA[<p>Bom Anderson,<br />
nao é tao simples assim. Achei um problema nos seus exemplos. Uma coisa que poucas pessoas conhecem e estudam e a precedencia dos sinais de comparaçao.</p>
<p>O exemplo file_exists(&#8216;tpl.php&#8217;) or die(&#8216;Arquivo não encontrado&#8217;); nao é valido, pq caso seja invertido:<br />
die(&#8216;Arquivo não encontrado&#8217;) or file_exists(&#8216;tpl.php&#8217;);<br />
mesmo o arquivo existindo ele apresentará a mensagem &#8220;Arquivo não encontrado&#8221;.</p>
<p>A explicação fica mais facil se fizermos assim:<br />
$retorno = false or true;<br />
var_dump($retorno);</p>
<p>qual a resposta ?<br />
true, certo ?<br />
 nao &#8230; a resposta é false. Pq ?? Simples, a precendencia do sinal de &#8220;=&#8221; e maior que a do &#8220;or&#8221;, por isso ele recebe o valor false antes da comparação..</p>
<p>A solução é trocar o sinal &#8220;or&#8221; pelo sinal que trabalha bit a bit que é o &#8220;||&#8221;<br />
$retorno = false || true;<br />
var_dump($retorno);  //true</p>
<p>agora sim a sentença apresenta o valor esperado. Quando estudei isso nunca mais usei operadores como &#8220;or&#8221; e &#8220;and&#8221; &#8230; </p>
<p>T+ pessoal !</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Micox</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134802</link>
		<dc:creator>Micox</dc:creator>
		<pubDate>Mon, 06 Apr 2009 12:32:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134802</guid>
		<description>Independente de dizerem que é óbvio ou não, é uma ÓTIMA dica. Parabéns.</description>
		<content:encoded><![CDATA[<p>Independente de dizerem que é óbvio ou não, é uma ÓTIMA dica. Parabéns.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Anderson Custódio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134775</link>
		<dc:creator>Anderson Custódio</dc:creator>
		<pubDate>Mon, 06 Apr 2009 11:29:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134775</guid>
		<description>Haaa.. Agora que prestei atenção no print, muito bom! :)</description>
		<content:encoded><![CDATA[<p>Haaa.. Agora que prestei atenção no print, muito bom! :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Carlos André Ferrari</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134770</link>
		<dc:creator>Carlos André Ferrari</dc:creator>
		<pubDate>Mon, 06 Apr 2009 11:24:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134770</guid>
		<description>Sim sim... só mostrei o uso do mod no php da mesma forma que os outros operadores, e no caso da zebra simplifica muito.

[]&#039;s</description>
		<content:encoded><![CDATA[<p>Sim sim&#8230; só mostrei o uso do mod no php da mesma forma que os outros operadores, e no caso da zebra simplifica muito.</p>
<p>[]&#8216;s</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Anderson Custódio</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134754</link>
		<dc:creator>Anderson Custódio</dc:creator>
		<pubDate>Mon, 06 Apr 2009 10:58:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134754</guid>
		<description>@Carlos André Ferrari Não se trata bem da solução mais simples, mas demostrar o uso de condições fora do if, while e etc... Mas valeu! :)</description>
		<content:encoded><![CDATA[<p>@Carlos André Ferrari Não se trata bem da solução mais simples, mas demostrar o uso de condições fora do if, while e etc&#8230; Mas valeu! :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Carlos André Ferrari</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134736</link>
		<dc:creator>Carlos André Ferrari</dc:creator>
		<pubDate>Mon, 06 Apr 2009 10:21:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134736</guid>
		<description>ops.. acabei de acordar, não tem o -1 no segundo exemplo

$zebras = array(‘z1’, z2′, ‘z3′);
foreach (range(1,10) as $item) {
print ($zebras[$item % (count(zebras))].”\n”);
}

[]&#039;</description>
		<content:encoded><![CDATA[<p>ops.. acabei de acordar, não tem o -1 no segundo exemplo</p>
<p>$zebras = array(‘z1’, z2′, ‘z3′);<br />
foreach (range(1,10) as $item) {<br />
print ($zebras[$item % (count(zebras))].”\n”);<br />
}</p>
<p>[]&#8216;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Carlos André Ferrari</title>
		<link>http://www.pinceladasdaweb.com.br/blog/2009/04/05/outros-lugares-onde-pode-usar-o-or-no-php/#comment-134734</link>
		<dc:creator>Carlos André Ferrari</dc:creator>
		<pubDate>Mon, 06 Apr 2009 10:20:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.pinceladasdaweb.com.br/blog/?p=1946#comment-134734</guid>
		<description>DGMIKE

para a zebra tem soluções mais simples:

$zebras = array(‘par’, &#039;impar&#039;);
foreach (range(1,10) as $item) {
print ($zebras[$item % 2].”\n”);
}

e se a zebra for colorida com N cores (lol)
$zebras = array(‘z1’, z2&#039;, &#039;z3&#039;);
foreach (range(1,10) as $item) {
print ($zebras[$item % (count(zebras)-1)].”\n”);
}

fica ai a dica

[]&#039;s</description>
		<content:encoded><![CDATA[<p>DGMIKE</p>
<p>para a zebra tem soluções mais simples:</p>
<p>$zebras = array(‘par’, &#8216;impar&#8217;);<br />
foreach (range(1,10) as $item) {<br />
print ($zebras[$item % 2].”\n”);<br />
}</p>
<p>e se a zebra for colorida com N cores (lol)<br />
$zebras = array(‘z1’, z2&#8242;, &#8216;z3&#8242;);<br />
foreach (range(1,10) as $item) {<br />
print ($zebras[$item % (count(zebras)-1)].”\n”);<br />
}</p>
<p>fica ai a dica</p>
<p>[]&#8216;s</p>
]]></content:encoded>
	</item>
</channel>
</rss>

