<?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>Spartan Code - Blog &#187; php</title>
	<atom:link href="http://www.spartan-code.com/blog/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.spartan-code.com/blog</link>
	<description>web development</description>
	<lastBuildDate>Fri, 04 Nov 2011 19:43:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.3</generator>
	<!-- google_ad_section_end --><!-- google_ad_section_start(weight=ignore) -->	<item>
		<title>Cómo contar los valores de las consultas de MySQL</title>
		<link>http://www.spartan-code.com/blog/sql/como-contar-los-valores-de-las-consultas-de-mysql/</link>
		<comments>http://www.spartan-code.com/blog/sql/como-contar-los-valores-de-las-consultas-de-mysql/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 19:43:12 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[SQL]]></category>
		<category><![CDATA[count]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[recorrer columna en mysql]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=86</guid>
		<description><![CDATA[How to count values with MySQL queries Last updated on November 11, 2008 Digamos que usted tiene la siguiente tabla se llama votos que realiza un seguimiento de cómo la gente votó y que desea una consulta para contar el número de votos, en lugar de tener que recorrer todas las filas con un contador [...]]]></description>
			<content:encoded><![CDATA[<p>How to count values with MySQL queries<br />
Last updated on November 11, 2008</p>
<p>Digamos que usted tiene la siguiente tabla se llama votos que realiza un seguimiento de cómo la gente votó y que desea una consulta para contar el número de votos, en lugar de tener que recorrer todas las filas  con un contador con un contador en PHP</p>
<p>person 	vote<br />
obama 	yes<br />
mccain 	no<br />
obama 	yes<br />
obama 	no<br />
mccain 	yes<br />
obama 	yes<br />
obama 	yes<br />
obama 	no<br />
mccain 	no</p>
<p>Esta es la solucion con MYSQL</p>
<p>SELECT person,<br />
SUM(IF(vote = &#8220;yes&#8221;, 1,0)) AS `yes_votes`,<br />
SUM(IF(vote = &#8220;no&#8221;, 1,0)) AS `no_votes`,<br />
COUNT(vote) AS `total`<br />
FROM votes<br />
GROUP BY person<br />
ORDER BY yes_votes DESC</p>
<p> El siguiente sería el resultado de la consulta:<br />
person 	yes_votes 	no_votes 	total<br />
obama 	4 	2 	6<br />
mccain 	1 	2 	3</p>
<p>Ahora, usted no tiene que recorrer los resultados de MySQL para contar valores de la columna =)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/sql/como-contar-los-valores-de-las-consultas-de-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enviar errores de Php por email(Custom error handlers))</title>
		<link>http://www.spartan-code.com/blog/php/enviar-errores-de-php-por-emailcustom-error-handlers/</link>
		<comments>http://www.spartan-code.com/blog/php/enviar-errores-de-php-por-emailcustom-error-handlers/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 14:08:40 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[custom error handlers]]></category>
		<category><![CDATA[errors]]></category>
		<category><![CDATA[mail]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=79</guid>
		<description><![CDATA[Aqui también vamos a aprender cómo enviar un correo electrónico con los posibles errores. De esta manera, cuando la aplicación web ha dado un error, un mail nos notificara que ha sucedido, y en que linea de codigo. &#60;?php &#160; &#160;// Nuestro propio error handler &#160;function spartan_code_error_handler&#40;$errorNumero, $mensaje, $archivo, $linea, $variables&#41; &#160;&#123; &#160; $email = [...]]]></description>
			<content:encoded><![CDATA[<p>Aqui también vamos a aprender cómo enviar un correo electrónico con los posibles errores. </p>
<p>De esta manera, cuando la aplicación web ha dado un error, un mail nos notificara que ha sucedido, y en que linea de codigo.</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">&lt;?php</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// Nuestro propio error handler</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw2">function</span> spartan_code_error_handler<span class="br0">&#40;</span><span class="re1">$errorNumero</span><span class="sy0">,</span> <span class="re1">$mensaje</span><span class="sy0">,</span> <span class="re1">$archivo</span><span class="sy0">,</span> <span class="re1">$linea</span><span class="sy0">,</span> <span class="re1">$variables</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$email</span> <span class="sy0">=</span> <span class="st0">&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0"> &nbsp; &lt;p&gt;El error ($errorNumero) ha ocurrido en la linea</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0"> &nbsp; &lt;strong&gt;$linea&lt;/strong&gt; en el archivo &lt;strong&gt;file: $archivo.&lt;/strong&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0"> &nbsp; &lt;p&gt; $mensaje &lt;/p&gt;&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$email</span> <span class="sy0">.=</span> <span class="st0">&quot;&lt; pre&gt;&quot;</span> <span class="sy0">.</span> <span class="kw3">print_r</span><span class="br0">&#40;</span><span class="re1">$variables</span><span class="sy0">,</span> <span class="nu0">1</span><span class="br0">&#41;</span> <span class="sy0">.</span> <span class="st0">&quot;&lt; /pre&gt;&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$headers</span> <span class="sy0">=</span> <span class="st0">&#39;Content-type: text/html; charset=iso-8859-1&#39;</span> <span class="sy0">.</span> <span class="st0">&quot;<span class="es0">\r</span><span class="es0">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// Nuestro Email&#8230;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">error_log</span><span class="br0">&#40;</span><span class="re1">$email</span><span class="sy0">,</span> <span class="nu0">1</span><span class="sy0">,</span> <span class="st0">&#39;you@youremail.com&#39;</span><span class="sy0">,</span> <span class="re1">$headers</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// Asegúrese de que usted decide cómo responder a los errores (en el lado del usuario)</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// Podemos hacer un &quot;echo&quot; de un mensaje de error, o matar a todo el proyecto. Hasta que el código sea solucionado</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">//en este caso la aplicacion hara un &quot;die&quot; solo si el error es mas de una NOTICE</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span> <span class="br0">&#40;</span><span class="re1">$numero</span> <span class="sy0">!==</span> <span class="kw2">E_NOTICE</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="br0">&#40;</span><span class="re1">$numero</span> <span class="sy0">&lt;</span> <span class="nu0">2048</span><span class="br0">&#41;</span> <span class="br0">&#41;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw3">die</span><span class="br0">&#40;</span><span class="st0">&quot;Ups!. Ha ocurrido un error, intente de nuevo&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">//Seteamos nuestra funcion en caso de error</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">set_error_handler</span><span class="br0">&#40;</span><span class="st0">&#39;spartan_code_error_handler&#39;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// Para probar ejecutamos el error imprimiendo una variable que no no existe</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">echo</span> <span class="re1">$bananas</span><span class="sy0">;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/enviar-errores-de-php-por-emailcustom-error-handlers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convertir un mes a cadena de texto sin usar switch(PHP)</title>
		<link>http://www.spartan-code.com/blog/php/convertir-un-mes-a-cadena-de-texto-sin-usar-switchphp/</link>
		<comments>http://www.spartan-code.com/blog/php/convertir-un-mes-a-cadena-de-texto-sin-usar-switchphp/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 13:51:11 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[mes a texto]]></category>
		<category><![CDATA[strings]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=75</guid>
		<description><![CDATA[Cuando necesitamos mostrar un mes en formato de texto, generalmente lo que hacemos es un gran array con los meses y luego los recoreremos todos con un switch para ver el mes correspondiente y que nos devuelva el valor en texto. Algo como esto: $now = time&#40;&#41;; &#40;isset&#40;$_GET&#91;&#39;m&#39;&#93;&#41;&#41; ? $monthnum = $_GET&#91;&#39;m&#39;&#93; : $monthnum = [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando necesitamos mostrar un mes en formato de texto, generalmente lo que hacemos es un gran array con los meses y luego los recoreremos todos con un switch para ver el mes correspondiente y que nos devuelva el valor en texto. Algo como esto:</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="re1">$now</span> <span class="sy0">=</span> <span class="kw3">time</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;m&#39;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> ? <span class="re1">$monthnum</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;m&#39;</span><span class="br0">&#93;</span> <span class="sy0">:</span> <span class="re1">$monthnum</span> <span class="sy0">=</span> <span class="kw3">date</span><span class="br0">&#40;</span><span class="st0">&quot;m&quot;</span><span class="sy0">,</span> <span class="re1">$now</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$nextmonth</span> <span class="sy0">=</span> <span class="re1">$monthnum</span> <span class="sy0">+</span> <span class="nu0">1</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">switch</span><span class="br0">&#40;</span><span class="re1">$nextmonth</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;01&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;January&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;02&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;February&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;03&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;March&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;04&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;April&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;05&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;May&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;06&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;June&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;07&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;July&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;08&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;August&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;09&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;September&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;10&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;October&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;11&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;November&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">case</span> <span class="st0">&quot;12&quot;</span> <span class="sy0">:</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="st0">&quot;December&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Pero la forma mas facil es generar un nuevo date y que nos devuelva el mes automaticamente, entonces todo ese codigo largo se trnansformaria en estas sencillas lineas de codigo</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">public</span> <span class="kw2">function</span> formatMonth<span class="br0">&#40;</span><span class="re1">$mNumber</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$monthnum</span> <span class="sy0">=</span> <span class="re1">$mNumber</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$stringmonth</span> <span class="sy0">=</span> <span class="kw3">date</span><span class="br0">&#40;</span><span class="st0">&quot;F&quot;</span><span class="sy0">,</span> <span class="kw3">mktime</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="br0">&#40;</span><span class="re1">$monthnum</span> <span class="sy0">+</span> <span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="sy0">;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">return</span> <span class="re1">$stringmonth</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/convertir-un-mes-a-cadena-de-texto-sin-usar-switchphp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leer los metatags de un sitio externos con php</title>
		<link>http://www.spartan-code.com/blog/php/leer-los-metatags-de-un-sitio-externos-con-php/</link>
		<comments>http://www.spartan-code.com/blog/php/leer-los-metatags-de-un-sitio-externos-con-php/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 17:32:30 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[leer tags]]></category>
		<category><![CDATA[metatags]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=74</guid>
		<description><![CDATA[Leer los metatags desde una url y salvarlos en un Array con PHP: &#60;?php /** &#160;* initMetatags &#160;* @param URL &#160; &#160; &#160; &#160; * Devuelve un array con los metatags con su respectivo valor &#160;*/ &#160;function initMetatags&#40;$url&#41; &#160;&#123; &#160; $result = false; &#160; &#160; &#160; $contents = $this-&#62;getUrlContents&#40;$url, 5&#41;; &#160; &#160; if &#40;isset&#40;$contents&#41; &#38;&#38; [...]]]></description>
			<content:encoded><![CDATA[<p>Leer los metatags desde una url y salvarlos en un Array con PHP:</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">&lt;?php</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* initMetatags</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* @param URL</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp; &nbsp; &nbsp; &nbsp; * Devuelve un array con los metatags con su respectivo valor</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;*/</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw2">function</span> initMetatags<span class="br0">&#40;</span><span class="re1">$url</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$result</span> <span class="sy0">=</span> <span class="kw2">false</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$contents</span> <span class="sy0">=</span> <span class="re1">$this</span><span class="sy0">-&gt;</span><span class="me1">getUrlContents</span><span class="br0">&#40;</span><span class="re1">$url</span><span class="sy0">,</span> <span class="nu0">5</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$contents</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">is_string</span><span class="br0">&#40;</span><span class="re1">$contents</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$title</span> <span class="sy0">=</span> <span class="kw2">null</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$metaTags</span> <span class="sy0">=</span> <span class="kw2">null</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw3">preg_match</span><span class="br0">&#40;</span><span class="st0">&#39;/&lt;title&gt;([^&gt;]*)&lt;<span class="es0">\/</span>title&gt;/si&#39;</span><span class="sy0">,</span> <span class="re1">$contents</span><span class="sy0">,</span> <span class="re1">$match</span> <span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">is_array</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&gt;</span> <span class="nu0">0</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$title</span> <span class="sy0">=</span> <span class="kw3">strip_tags</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$contents</span> <span class="sy0">=</span> <span class="kw3">str_replace</span><span class="br0">&#40;</span><span class="st0">&#39;scheme=&quot;&quot;&#39;</span><span class="sy0">,</span> <span class="st0">&quot;&quot;</span><span class="sy0">,</span> <span class="re1">$contents</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw3">preg_match_all</span><span class="br0">&#40;</span><span class="st0">&#39;/&lt;[<span class="es0">\s</span>]*meta[<span class="es0">\s</span>]*name=&quot;?&#39;</span> <span class="sy0">.</span> <span class="st0">&#39;([^&gt;&quot;]*)&quot;?[<span class="es0">\s</span>]*&#39;</span> <span class="sy0">.</span> <span class="st0">&#39;content=&quot;?([^&gt;&quot;]*)&quot;?[<span class="es0">\s</span>]*[<span class="es0">\/</span>]?[<span class="es0">\s</span>]*&gt;/si&#39;</span><span class="sy0">,</span> <span class="re1">$contents</span><span class="sy0">,</span> <span class="re1">$match</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">is_array</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">==</span> <span class="nu0">3</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$originals</span> <span class="sy0">=</span> <span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$names</span> <span class="sy0">=</span> <span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$values</span> <span class="sy0">=</span> <span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$originals</span><span class="br0">&#41;</span> <span class="sy0">==</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$names</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$names</span><span class="br0">&#41;</span> <span class="sy0">==</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$values</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="re1">$metaTags</span> <span class="sy0">=</span> <span class="kw3">array</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="kw1">for</span> <span class="br0">&#40;</span><span class="re1">$i</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">,</span> <span class="re1">$limiti</span><span class="sy0">=</span><span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$names</span><span class="br0">&#41;</span><span class="sy0">;</span> <span class="re1">$i</span> <span class="sy0">&lt;</span> <span class="re1">$limiti</span><span class="sy0">;</span> <span class="re1">$i</span><span class="sy0">++</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; <span class="re1">$metaTags</span><span class="br0">&#91;</span><span class="kw3">strtolower</span><span class="br0">&#40;</span><span class="re1">$names</span><span class="br0">&#91;</span><span class="re1">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#93;</span> <span class="sy0">=</span> &nbsp;<span class="re1">$values</span><span class="br0">&#91;</span><span class="re1">$i</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="re1">$metaTags</span><span class="br0">&#91;</span><span class="st0">&#39;title&#39;</span><span class="br0">&#93;</span> <span class="sy0">=</span> &nbsp;<span class="re1">$title</span> <span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; <span class="co1">//$metaTags.push();</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$result</span> <span class="sy0">=</span> &nbsp;<span class="re1">$metaTags</span> <span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">return</span> <span class="re1">$result</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="coMULTI">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* getUrlContents</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* Obtain the code of the website to read the metadata</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* @return String Code</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* @param url</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* @param maximumRedirections </span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;* @param currentRedirection</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp;*/</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw2">function</span> getUrlContents<span class="br0">&#40;</span><span class="re1">$url</span><span class="sy0">,</span> <span class="re1">$maximumRedirections</span> <span class="sy0">=</span> <span class="kw2">null</span><span class="sy0">,</span> <span class="re1">$currentRedirection</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$result</span> <span class="sy0">=</span> <span class="kw2">false</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">ini_set</span><span class="br0">&#40;</span><span class="st0">&quot;user_agent&quot;</span><span class="sy0">,</span> <span class="st0">&quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$contents</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">file_get_contents</span><span class="br0">&#40;</span><span class="re1">$url</span><span class="br0">&#41;</span><span class="sy0">;</span> &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$contents</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">is_string</span><span class="br0">&#40;</span><span class="re1">$contents</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw3">preg_match_all</span><span class="br0">&#40;</span><span class="st0">&#39;/&lt;[<span class="es0">\s</span>]*meta[<span class="es0">\s</span>]*http-equiv=&quot;?REFRESH&quot;?&#39;</span> <span class="sy0">.</span> <span class="st0">&#39;[<span class="es0">\s</span>]*content=&quot;?[0-9]*;[<span class="es0">\s</span>]*URL[<span class="es0">\s</span>]*=[<span class="es0">\s</span>]*([^&gt;&quot;]*)&quot;?&#39;</span> <span class="sy0">.</span> <span class="st0">&#39;[<span class="es0">\s</span>]*[<span class="es0">\/</span>]?[<span class="es0">\s</span>]*&gt;/si&#39;</span><span class="sy0">,</span> <span class="re1">$contents</span><span class="sy0">,</span> <span class="re1">$match</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">is_array</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#41;</span> <span class="sy0">==</span> <span class="nu0">2</span> <span class="sy0">&amp;&amp;</span> <span class="kw3">count</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="sy0">==</span> <span class="nu0">1</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="sy0">!</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re1">$maximumRedirections</span><span class="br0">&#41;</span> <span class="sy0">||</span> <span class="re1">$currentRedirection</span> <span class="sy0">&lt;</span> <span class="re1">$maximumRedirections</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;<span class="kw1">return</span> <span class="re1">$this</span><span class="sy0">-&gt;</span><span class="me1">getUrlContents</span><span class="br0">&#40;</span><span class="re1">$match</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="sy0">,</span> <span class="re1">$maximumRedirections</span><span class="sy0">,</span> <span class="sy0">++</span><span class="re1">$currentRedirection</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$result</span> <span class="sy0">=</span> <span class="kw2">false</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re1">$result</span> <span class="sy0">=</span> <span class="re1">$contents</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span> &nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">return</span> <span class="re1">$contents</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
<p>Llamamos a la funcion</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="re1">$result</span> <span class="sy0">=</span> initMetatags<span class="br0">&#40;</span><span class="st0">&quot;http://www.spartan-code.com&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">echo</span> <span class="re1">$result</span><span class="sy0">;</span></div>
</li>
</ol>
</div>
<p>Salida:</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw3">Array</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>title<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> Spartan Code <span class="sy0">-</span> Web Applications <span class="sy0">&amp;</span> Software development</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>metaTags<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="kw3">Array</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>robots<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="kw3">Array</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>html<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="sy0">&lt;</span>meta name<span class="sy0">=</span><span class="st0">&quot;robots&quot;</span> content<span class="sy0">=</span><span class="st0">&quot;index, follow&quot;</span> <span class="sy0">/&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>value<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> index<span class="sy0">,</span> follow</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>keywords<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="kw3">Array</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>html<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="sy0">&lt;</span>meta name<span class="sy0">=</span><span class="st0">&quot;keywords&quot;</span> content<span class="sy0">=</span><span class="st0">&quot;diseño web, empresa de diseño web, desarrollo de sitios web, sitios web corporativos, E-marketing, Posicionamiento y Marketing en Buscadores, Comercio Electrónico&quot;</span> &nbsp;<span class="sy0">/&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>value<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> dise�o web<span class="sy0">,</span> empresa de dise�o web<span class="sy0">,</span> desarrollo de sitios web<span class="sy0">,</span> sitios web corporativos<span class="sy0">,</span> E<span class="sy0">-</span>marketing<span class="sy0">,</span> Posicionamiento y Marketing en Buscadores<span class="sy0">,</span> Comercio Electr�nico</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>description<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="kw3">Array</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>html<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> <span class="sy0">&lt;</span>meta name<span class="sy0">=</span><span class="st0">&quot;description&quot;</span> content<span class="sy0">=</span><span class="st0">&quot;Diseño Web. Resolvemos toda tu Estrategia Online. Te desafiamos a que encuentres mejores propuestas!&quot;</span> &nbsp;<span class="sy0">/&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>value<span class="br0">&#93;</span> <span class="sy0">=&gt;</span> Dise�o Web<span class="sy0">.</span> Resolvemos toda tu Estrategia Online<span class="sy0">.</span> Te desafiamos a que encuentres mejores propuestas<span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#41;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/leer-los-metatags-de-un-sitio-externos-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Remover tags de html en php</title>
		<link>http://www.spartan-code.com/blog/php/remover-tags-de-html-en-php/</link>
		<comments>http://www.spartan-code.com/blog/php/remover-tags-de-html-en-php/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 13:08:40 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[regexp]]></category>
		<category><![CDATA[remove tags]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=73</guid>
		<description><![CDATA[Para remover todos los html tags desde un txto en particular y dejarlo simplemente como texto plano, lo que debemos hacer es usar expresiones regulares y sustituir dichos cacracteres. &#160; &#60;?php $string = &#60;img class=&#34;alignright size-full wp-image-243116&#34; title=&#34;rr&#34; src=&#34;http://tctechcrunch.files.wordpress.com/2010/11/rr.png&#34; alt=&#34;&#34; /&#62;As we&#39;re all well aware, with the recent launch of Windows Phone 7, Microsoft is [...]]]></description>
			<content:encoded><![CDATA[<p>Para remover todos los html tags desde un txto en particular y dejarlo simplemente como texto plano, lo que debemos hacer es usar expresiones regulares y sustituir dichos cacracteres.</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">&lt;?php</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$string</span> <span class="sy0">=</span> <span class="sy0">&lt;</span>img <span class="kw2">class</span><span class="sy0">=</span><span class="st0">&quot;alignright size-full wp-image-243116&quot;</span> title<span class="sy0">=</span><span class="st0">&quot;rr&quot;</span> src<span class="sy0">=</span><span class="st0">&quot;http://tctechcrunch.files.wordpress.com/2010/11/rr.png&quot;</span> alt<span class="sy0">=</span><span class="st0">&quot;&quot;</span> <span class="sy0">/&gt;</span>As we<span class="st0">&#39;re all well aware, with the recent launch of Windows Phone 7, Microsoft is about to enter into yet another major war with Google, this time in the mobile space (or at least, &lt;a href=&quot;http://techcrunch.com/2010/10/12/windows-phone/&quot;&gt;they hope it will be a war&lt;/a&gt;). So perhaps it shouldn&#39;</span>t be too surprising today that when one of them bought an ad on Twitter<span class="sy0">,</span> the other followed suit<span class="sy0">.</span> Yes<span class="sy0">,</span> both Microsoft and Google are running Promoted ads right <span class="kw3">next</span> to <span class="kw3">each</span> other today<span class="sy0">.</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">preg_replace</span><span class="br0">&#40;</span><span class="st0">&quot;/&lt;.*?&gt;/&quot;</span><span class="sy0">,</span> <span class="st0">&quot;&quot;</span><span class="sy0">,</span> <span class="re1">$string</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/remover-tags-de-html-en-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redimensionar imagenes con PHP y GD</title>
		<link>http://www.spartan-code.com/blog/php/redimensionar-imagenes-con-php-y-gd/</link>
		<comments>http://www.spartan-code.com/blog/php/redimensionar-imagenes-con-php-y-gd/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 16:09:13 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[gd]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/?p=68</guid>
		<description><![CDATA[Agregamos un archivo con el nombre imagen.php, este archivo se encargara de redimensionar la imagen recibiendo parametros por GET, este archivo devuelve un file del tipo jpg con nuestra imagen redimensionada. image.php &#160; &#60;?php header &#40;&#34;Content-type: image/jpeg&#34;&#41;; /* JPEG / PNG Image Resizer Parametros (Enviados por la URL): &#160; img = path / url del [...]]]></description>
			<content:encoded><![CDATA[<p>Agregamos un archivo con el nombre imagen.php, este archivo se encargara de redimensionar la imagen recibiendo parametros por GET, este archivo devuelve un file del tipo jpg con nuestra imagen redimensionada.</p>
<p>image.php</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">&lt;?php</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">header</span> <span class="br0">&#40;</span><span class="st0">&quot;Content-type: image/jpeg&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">JPEG / PNG Image Resizer</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">Parametros (Enviados por la URL):</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">img = path / url del jpeg or png de la imagen</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">percent = Si esto esta definido la imagen sera redimensionada por </span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp; &nbsp; ese valor en porcentaje(ej: 50 divide por 50%)</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">w = width(Ancho de la imagen)</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">h = height(Alto de la imagen)</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">constrain = si este parámetro es definido, y alto y ancho tambien, el tamano de la imagen</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp; &nbsp;se limita por el menor valor</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">&nbsp; &nbsp;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">Requiere GD Extension de PHP</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">Outputs the resulting image in JPEG Format</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">By: Martin Prado &#8211; martin@spartan-code.com</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">Filename : image.php</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$img</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;img&#39;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$percent</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;percent&#39;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$constrain</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;constrain&#39;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$w</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;w&#39;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$h</span> <span class="sy0">=</span> <span class="re1">$_GET</span><span class="br0">&#91;</span><span class="st0">&#39;h&#39;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// get image size of img</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$x</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">getimagesize</span><span class="br0">&#40;</span><span class="re1">$img</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// image width</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$sw</span> <span class="sy0">=</span> <span class="re1">$x</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// image height</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$sh</span> <span class="sy0">=</span> <span class="re1">$x</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="re1">$percent</span> <span class="sy0">&gt;</span> <span class="nu0">0</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// calculate resized height and width if percent is defined</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re1">$percent</span> <span class="sy0">=</span> <span class="re1">$percent</span> <span class="sy0">*</span> <span class="nu0">0.01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re1">$w</span> <span class="sy0">=</span> <span class="re1">$sw</span> <span class="sy0">*</span> <span class="re1">$percent</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re1">$h</span> <span class="sy0">=</span> <span class="re1">$sh</span> <span class="sy0">*</span> <span class="re1">$percent</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$w</span><span class="br0">&#41;</span> AND <span class="sy0">!</span><span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$h</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// autocompute height if only width is set</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$h</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">/</span> <span class="re1">$w</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$h</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">*</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span> <span class="kw1">elseif</span> <span class="br0">&#40;</span><span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$h</span><span class="br0">&#41;</span> AND <span class="sy0">!</span><span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$w</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// autocompute width if only height is set</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$w</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">/</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$w</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">*</span> <span class="re1">$w</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span> <span class="kw1">elseif</span> <span class="br0">&#40;</span><span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$h</span><span class="br0">&#41;</span> AND <span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$w</span><span class="br0">&#41;</span> AND <span class="kw3">isset</span> <span class="br0">&#40;</span><span class="re1">$constrain</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// get the smaller resulting image dimension if both height</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">// and width are set and $constrain is also set</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$hx</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">/</span> <span class="re1">$w</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$hx</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">*</span> <span class="re1">$hx</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$wx</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">/</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$wx</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">*</span> <span class="re1">$wx</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re1">$hx</span> <span class="sy0">&lt;</span> <span class="re1">$h</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$h</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">/</span> <span class="re1">$w</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$h</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">*</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$w</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="nu0">100</span> <span class="sy0">/</span> <span class="br0">&#40;</span><span class="re1">$sh</span> <span class="sy0">/</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="sy0">.</span><span class="nu0">01</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re1">$w</span> <span class="sy0">=</span> <span class="sy0">@</span><span class="kw3">round</span> <span class="br0">&#40;</span><span class="re1">$sw</span> <span class="sy0">*</span> <span class="re1">$w</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$im</span> <span class="sy0">=</span> <span class="sy0">@</span>ImageCreateFromJPEG <span class="br0">&#40;</span><span class="re1">$img</span><span class="br0">&#41;</span> or <span class="co1">// Read JPEG Image</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$im</span> <span class="sy0">=</span> <span class="sy0">@</span>ImageCreateFromPNG <span class="br0">&#40;</span><span class="re1">$img</span><span class="br0">&#41;</span> or <span class="co1">// or PNG Image</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$im</span> <span class="sy0">=</span> <span class="sy0">@</span>ImageCreateFromGIF <span class="br0">&#40;</span><span class="re1">$img</span><span class="br0">&#41;</span> or <span class="co1">// or GIF Image</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$im</span> <span class="sy0">=</span> <span class="kw2">false</span><span class="sy0">;</span> <span class="co1">// If image is not JPEG, PNG, or GIF</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="sy0">!</span><span class="re1">$im</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// We get errors from PHP&#39;s ImageCreate functions&#8230;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// So let&#39;s echo back the contents of the actual image.</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">readfile</span> <span class="br0">&#40;</span><span class="re1">$img</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// Create the resized image destination</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re1">$thumb</span> <span class="sy0">=</span> <span class="sy0">@</span>ImageCreateTrueColor <span class="br0">&#40;</span><span class="re1">$w</span><span class="sy0">,</span> <span class="re1">$h</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// Copy from image source, resize it, and paste to image destination</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">@</span>ImageCopyResampled <span class="br0">&#40;</span><span class="re1">$thumb</span><span class="sy0">,</span> <span class="re1">$im</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="nu0">0</span><span class="sy0">,</span> <span class="re1">$w</span><span class="sy0">,</span> <span class="re1">$h</span><span class="sy0">,</span> <span class="re1">$sw</span><span class="sy0">,</span> <span class="re1">$sh</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="co1">// Output resized image</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">@</span>ImageJPEG <span class="br0">&#40;</span><span class="re1">$thumb</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
<p>Html para mostrar el thumbnail de la imagen</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&lt;</span>img src<span class="sy0">=</span><span class="st0">&quot;image.php?img=default.jpg&amp;w=160&amp;h=226&quot;</span> &nbsp;<span class="sy0">/&gt;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/redimensionar-imagenes-con-php-y-gd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Listar en nombre de archivos de un directorio con PHP</title>
		<link>http://www.spartan-code.com/blog/php/listar-en-nombre-de-archivos-de-un-directorio-con-php/</link>
		<comments>http://www.spartan-code.com/blog/php/listar-en-nombre-de-archivos-de-un-directorio-con-php/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 20:45:13 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/index.php/listar-en-nombre-de-archivos-de-un-directorio-con-php/</guid>
		<description><![CDATA[if ($handle = opendir($path)) { $ret = ''; while (false !== ($file = readdir($handle))) { if($file!="." &#38;&#38; $file!=".."){ $ret =  $ret . '&#60;li&#62; &#60;a class="thumb" href="'.$path.'/'."$file\n".'" title="your image title"&#62; &#60;img src="'.$path.'/'."$file\n".'" alt="'.$titulo.'" /&#62; &#60;/a&#62; &#60;div class="caption"&#62; '.$titulo.' &#60;/div&#62; &#60;/li&#62;'; } } closedir($handle); return $ret; }]]></description>
			<content:encoded><![CDATA[<pre>

<code>if ($handle = opendir($path)) {

$ret = '';
while (false !== ($file = readdir($handle))) {
if($file!="." &amp;&amp; $file!=".."){
$ret =  $ret . '&lt;li&gt;
&lt;a class="thumb" href="'.$path.'/'."$file\n".'" title="your image title"&gt;
&lt;img src="'.$path.'/'."$file\n".'" alt="'.$titulo.'" /&gt;
&lt;/a&gt;
&lt;div class="caption"&gt;
'.$titulo.'
&lt;/div&gt;
&lt;/li&gt;';
}

}
closedir($handle);
return $ret;

}
<code>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/listar-en-nombre-de-archivos-de-un-directorio-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Función PHP para forzar la descarga de archivos</title>
		<link>http://www.spartan-code.com/blog/php/funcion-php-para-forzar-la-descarga-de-archivos/</link>
		<comments>http://www.spartan-code.com/blog/php/funcion-php-para-forzar-la-descarga-de-archivos/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 12:53:49 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[forzar descarga]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/index.php/funcion-php-para-forzar-la-descarga-de-archivos/</guid>
		<description><![CDATA[function force_download($file) { if ((isset($file))&#38;&#38;(file_exists($file))) { header("Content-length: ".filesize($file)); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="' . $file . '"'); readfile("$file"); } else { echo "No se ha seleccionado ningún fichero"; } }]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: arial; font-size: 13px; line-height: normal; border-collapse: collapse" class="Apple-style-span"></span>
<pre style="font-size: 11px" name="code">function force_download($file)</pre>
<pre style="font-size: 11px" name="code">{</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>if ((isset($file))&amp;&amp;(file_exists($file)))</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>{</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>        header("Content-length: ".filesize($file));</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">		</span>header('Content-Type: application/octet-stream');</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">		</span>header('Content-Disposition: attachment; filename="' . $file . '"');</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">		</span>readfile("$file");</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>else</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>{</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">		</span>echo "No se ha seleccionado ningún fichero";</pre>
<pre style="font-size: 11px" name="code"><span style="white-space: pre" class="Apple-tab-span">	</span>}</pre>
<pre style="font-size: 11px" name="code"> }</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/funcion-php-para-forzar-la-descarga-de-archivos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Acceder a Google Weather en PHP</title>
		<link>http://www.spartan-code.com/blog/google/acceder-a-google-weather-en-php/</link>
		<comments>http://www.spartan-code.com/blog/google/acceder-a-google-weather-en-php/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 12:24:08 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[google]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[weather]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/index.php/acceder-a-google-weather-en-php/</guid>
		<description><![CDATA[Interesante clase para acceder de un modo sencillo al servicio metereológico de Google.Ejemplo: &#60;?php class GoogleWeatherAPI { private $city_code = ''; private $city = ''; private $domain = 'www.google.com'; private $prefix_images = ''; private $current_conditions = array(); private $forecast_conditions = array(); private $is_found = true; /** * Class constructor * @param $city_code is the label [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: arial; font-size: 13px; line-height: normal; border-collapse: collapse" class="Apple-style-span">Interesante clase para acceder de un modo sencillo al servicio metereológico de Google.Ejemplo: </span>
<p style="width: 675px; overflow-x: auto; overflow-y: auto">
<pre style="font-size: 11px" name="code">&lt;?php class GoogleWeatherAPI {</pre>
<pre style="font-size: 11px" name="code">private $city_code = '';</pre>
<pre style="font-size: 11px" name="code">private $city = '';</pre>
<pre style="font-size: 11px" name="code">private $domain = 'www.google.com';</pre>
<pre style="font-size: 11px" name="code">private $prefix_images = '';</pre>
<pre style="font-size: 11px" name="code">private $current_conditions = array();</pre>
<pre style="font-size: 11px" name="code">private $forecast_conditions = array();</pre>
<pre style="font-size: 11px" name="code">private $is_found = true;</pre>
<pre style="font-size: 11px" name="code"></pre>
<pre style="font-size: 11px" name="code">/** 	* Class constructor</pre>
<pre style="font-size: 11px" name="code">* @param $city_code is the label of the city</pre>
<pre style="font-size: 11px" name="code">* @param $lang the lang of the return weather labels</pre>
<pre style="font-size: 11px" name="code">* @return ... 	*/</pre>
<pre style="font-size: 11px" name="code">function __construct ($city_code,$lang='fr')</pre>
<pre style="font-size: 11px" name="code">{</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>$this-&gt;city_code = $city_code;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>$this-&gt;prefix_images = 'http://'.$this-&gt;domain;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>$this-&gt;url = 'http://'.$this-&gt;domain.'/ig/api?weather='.urlencode($this-&gt;city_code).'&amp;hl='.$lang;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>$content = utf8_encode(file_get_contents($this-&gt;url));</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>$xml = simplexml_load_string($content);</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>if(!isset($xml-&gt;weather-&gt;problem_cause)) {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$xml = simplexml_load_string($content);</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;city = (string)$xml-&gt;weather-&gt;forecast_information-&gt;city-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;current_conditions['condition'] = (string)$xml-&gt;weather-&gt;current_conditions-&gt;condition-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code">	<span class="Apple-tab-span" style="white-space: pre">	</span>$this-&gt;current_conditions['temp_f'] = (string)$xml-&gt;weather-&gt;current_conditions-&gt;temp_f-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;current_conditions['temp_c'] = (string)$xml-&gt;weather-&gt;current_conditions-&gt;temp_c-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;current_conditions['humidity'] = (string)$xml-&gt;weather-&gt;current_conditions-&gt;humidity-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;current_conditions['icon'] = $this-&gt;prefix_images.(string)$xml-&gt;weather-&gt;current_conditions-&gt;icon-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;current_conditions['wind_condition'] = (string)$xml-&gt;weather-&gt;current_conditions-&gt;wind_condition-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>foreach($xml-&gt;weather-&gt;forecast_conditions as $this-&gt;forecast_conditions_value) {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions_temp = array();</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions_temp['day_of_week'] = (string)$this-&gt;forecast_conditions_value-&gt;day_of_week-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"> 		<span class="Apple-tab-span" style="white-space: pre">	</span>$this-&gt;forecast_conditions_temp['low'] = (string)$this-&gt;forecast_conditions_value-&gt;low-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions_temp['high'] = (string)$this-&gt;forecast_conditions_value-&gt;high-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions_temp['icon'] = $this-&gt;prefix_images.(string)$this-&gt;forecast_conditions_value-&gt;icon-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions_temp['condition'] = (string)$this-&gt;forecast_conditions_value-&gt;condition-&gt;attributes()-&gt;data;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">			</span>$this-&gt;forecast_conditions []= $this-&gt;forecast_conditions_temp;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>else {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>$this-&gt;is_found = false;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>function getCity() {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>return $this-&gt;city;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>function getCurrent() {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>return $this-&gt;current_conditions;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>function getForecast() {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">		</span>return $this-&gt;forecast_conditions;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code"></pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>function isFound() {</pre>
<pre style="font-size: 11px" name="code"> 		return $this-&gt;is_found;</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="whit
e-space: pre">	</span>}</pre>
<pre style="font-size: 11px" name="code">}</pre>
<pre style="font-size: 11px" name="code"> $gweather = new GoogleWeatherAPI('valencia','es');</pre>
<pre style="font-size: 11px" name="code">if($gweather-&gt;isFound()) {</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>echo '&lt;pre&gt;'; print_r($gweather-&gt;getCity());</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>echo '&lt;/pre&gt;';</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>echo '&lt;pre&gt;';</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>print_r($gweather-&gt;getCurrent());</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>echo '&lt;/pre&gt;';</pre>
<pre style="font-size: 11px" name="code"><span class="Apple-tab-span" style="white-space: pre">	</span>echo '&lt;pre&gt;';</pre>
<pre style="font-size: 11px" name="code">print_r($gweather-&gt;getForecast()); echo '&lt;/pre&gt;';</pre>
<pre style="font-size: 11px" name="code">}</pre>
<pre style="font-size: 11px" name="code">?&gt;</pre>
<pre style="font-size: 11px" name="code"></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/google/acceder-a-google-weather-en-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Highlight menu in php</title>
		<link>http://www.spartan-code.com/blog/php/highlight-menu-in-php/</link>
		<comments>http://www.spartan-code.com/blog/php/highlight-menu-in-php/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 01:18:53 +0000</pubDate>
		<dc:creator>Pirata21</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.spartan-code.com/blog/index.php/highlight-menu-in-php/</guid>
		<description><![CDATA[Siempre he preferido incluir un archivo de menú de mis sitios en lugar de repetirlos en todas las páginas por la obvia razón de que los elementos de menú cambian a veces y que sea más fácil de cambiar un archivo que cambiar los enlaces en todas las páginas que muestran que el menú. Así [...]]]></description>
			<content:encoded><![CDATA[<p><span dir="ltr" id=":1dw">Siempre he preferido incluir un archivo de menú de mis sitios en lugar de repetirlos en todas las páginas por la obvia razón de que los elementos de menú cambian a veces y que sea más fácil de cambiar un archivo que cambiar los enlaces en todas las páginas que muestran que el menú.</span></p>
<p>Así que de todos modos, hace poco he querido utilizar CSS para mostrar el elemento activo o la página actual del usuario,  esto es fácil de hacer cuando el menú está en cada página, pero requiere un poco de PHP cuando se utiliza un menú único que incluye todo su sitio.</p>
<p>Así que de todos modos esta es mi solución:</p>
<p>Aquí está el código para el menú de navegación &#8211; Puedo guardar esto como un archivo llamado menu.php</p>
<p>&lt;?php<br />
$active[$current] = &#8220;class=active&#8221;;<br />
?&gt;<br />
&lt;div class=&#8221;grey&#8221; id=&#8221;menu_wrapper&#8221;&gt;<br />
&lt;div class=&#8221;left&#8221;&gt;&lt;/div&gt;<br />
&lt;ul id=&#8221;menu&#8221;&gt;<br />
&lt;li &lt;?php echo $active[1] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Nuestra Empresa&lt;/a&gt;&lt;/li&gt;<br />
&lt;li &lt;?php echo $active[2] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Ubicación&lt;/a&gt;&lt;/li&gt;<br />
&lt;li &lt;?php echo $active[3] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Servicios&lt;/a&gt;&lt;/li&gt;<br />
&lt;li &lt;?php echo $active[4] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Recursos humanos&lt;/a&gt;&lt;/li&gt;<br />
&lt;li &lt;?php echo $active[5] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Sistema de Gestión S.U.M.II&lt;/a&gt;&lt;/li&gt;<br />
&lt;li &lt;?php echo $active[6] ?&gt;&gt;&lt;a href=&#8221;#&#8221;&gt;Contacto&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
&lt;/div&gt;</p>
<p>Luego, basta con incluir el menú en sus páginas e indicar cuál de los enlaces del menú que desea darle el estilo CSS &#8220;activos&#8221;:</p>
<p>&lt;? php $ actual = 3; include ( &#8220;menu.php&#8221;);?&gt;</p>
<p>Por último, no se olvide de declarar un estilo visual para la clase CSS &#8220;activo&#8221; para hacer el enlace de la página actual para destacarlo de los demás.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.spartan-code.com/blog/php/highlight-menu-in-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	<!-- google_ad_section_end --><!-- google_ad_section_start(weight=ignore) --></channel>
</rss>

