<?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>Mundo Osukaru &#187; PHP</title>
	<atom:link href="http://www.osukaru.es/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.osukaru.es</link>
	<description>Desarrollo web y Tecnología</description>
	<lastBuildDate>Thu, 05 Aug 2010 10:51:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<script type="text/javascript">

if (typeof Meebo == 'undefined') {

Meebo=function(){(Meebo._=Meebo._||[]).push(arguments)};
(function(q){

	var args = arguments;
	if (!document.body) { return setTimeout(function(){ args.callee.apply(this, args) }, 100); }
	var d=document, b=d.body, m=b.insertBefore(d.createElement('div'), b.firstChild); s=d.createElement('script');
	m.id='meebo'; m.style.display='none'; m.innerHTML='<iframe id="meebo-iframe"></iframe>';
	s.src='http'+(q.https?'s':'')+'://'+(q.stage?'stage-':'')+'cim.meebo.com/cim/cim.php?network='+q.network;
	b.insertBefore(s, b.firstChild);

})({network:'mundoosukaru_xa39vo'});	}</script>	<item>
		<title>Instalando XDebug en PHP 5.3</title>
		<link>http://www.osukaru.es/programacion/instalando-xdebug-en-php-5-3/</link>
		<comments>http://www.osukaru.es/programacion/instalando-xdebug-en-php-5-3/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 21:32:09 +0000</pubDate>
		<dc:creator>Osukaru</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.osukaru.es/?p=56</guid>
		<description><![CDATA[Uno de los buenos hábitos que se cogen al trabajar con Symfony es el desarrollo de pruebas automáticas para nuestros proyectos. Symfony nos proporciona Lime, una librería para pruebas muy simple que está basada en PHPUnit. Al escribir pruebas para nuestro código es fácil olvidar alguna porción del mismo, por eso Symfony nos proporciona la [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Uno de los buenos hábitos que se cogen al trabajar con Symfony es el desarrollo de pruebas automáticas para nuestros proyectos. Symfony nos proporciona Lime, una librería para pruebas muy simple que está basada en PHPUnit. Al escribir pruebas para nuestro código es fácil olvidar alguna porción del mismo, por eso Symfony nos proporciona la tarea <em>test:coverage</em>, que nos dirá qué porcentaje de nuestro código está cubierto por las pruebas (aunque esto no garantice que están probadas todas las posibilidades, sólo que cada línea de nuestro código ha sido ejecutada por alguna prueba). Sin embargo, para que esta tarea funcione tenemos que tener instalado y habilitado XDebug.</p>
<p style="text-align: justify;"><span id="more-56"></span></p>
<p style="text-align: justify;">Para instalar XDebug debemos ir a a la <a href="http://xdebug.org/index.php" target="_blank">página oficial</a>, descargar los <a href="http://xdebug.org/download.php" target="_blank">archivos necesarios</a> y seguir las <a href="http://xdebug.org/docs/install" target="_blank">instrucciones de instalación</a>. En nuestro caso estamos trabajando bajo Windows y con PHP 5.3 , por lo que nos tendremos que descargar la dll correspondiente y colocarla en algún lugar de nuestro disco duro (por ejemplo bajo el directorio <em>ext</em> de la instalación de PHP). Ahora sólo tenemos que editar el archivo php.ini de la instalación de PHP 5.3 y añadir la siguiente línea al final:</p>
<pre style="text-align: justify;"><strong>zend_extension="(ruta completa a php5.3.0)\ext\php_xdebug-2.0.5-5.3-vc6.dll"</strong></pre>
<p style="text-align: justify;">Ahora sólo tenemos que asegurarnos de que la ruta al ejecutable <em>php.exe</em> está incluida en la variable de entorno <em>Path</em> y ya podemos ejecutar la tarea <em>test:coverage</em>.</p>
<img style='display:none' id="post-56-blankimage" onload="Meebo('discoverSharable', {element: ((this.parentNode.className.match('post')) ? this.parentNode : this.parentNode.parentNode) ,url:'http://www.osukaru.es/programacion/instalando-xdebug-en-php-5-3/',title:'Instalando XDebug en PHP 5.3',tweet:'Uno de los buenos hábitos que se cogen al trabajar con Symfony es el desarrollo de pruebas automát',description:'Uno de los buenos hábitos que se cogen al trabajar con Symfony es el desarrollo de pruebas automát'})"><script type='text/javascript'>document.getElementById("post-56-blankimage").onload();</script>]]></content:encoded>
			<wfw:commentRss>http://www.osukaru.es/programacion/instalando-xdebug-en-php-5-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuración de Apache para un proyecto Symfony</title>
		<link>http://www.osukaru.es/programacion/configuracion-de-apache-para-un-proyecto-symfony/</link>
		<comments>http://www.osukaru.es/programacion/configuracion-de-apache-para-un-proyecto-symfony/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 22:27:24 +0000</pubDate>
		<dc:creator>Osukaru</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.osukaru.es/?p=48</guid>
		<description><![CDATA[Una vez que hemos creado un proyecto Symfony con Netbeans tenemos que configurar nuestro servidor Apache para que tengamos acceso a él, y lo haremos añadiendo un host virtual. Básicamente tenemos dos opciones: Añadir un host virtual que escuche por un puerto determinado. Añadir un host virtual que tenga un nombre dedicado de dominio. Para [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Una vez que hemos creado un <a href="http://www.osukaru.es/2009/11/11/soporte-para-symfony-a-partir-de-netbeans-6-8/">proyecto Symfony con Netbeans</a> tenemos que configurar nuestro servidor Apache para que tengamos acceso a él, y lo haremos añadiendo un host virtual. Básicamente tenemos dos opciones:</p>
<ol style="text-align: justify;">
<li>Añadir un host virtual que escuche por un puerto determinado.</li>
<li>Añadir un host virtual que tenga un nombre dedicado de dominio.</li>
</ol>
<p style="text-align: justify;"><span id="more-48"></span>Para la primera opción simplemente tenemos que añadir las siguientes líneas al archivo <em>httpd.conf</em>:<br />
[xml]<br />
NameVirtualHost 127.0.0.1:8080</p>
<p style="text-align: justify;">Listen 127.0.0.1:8080</p>
<p style="text-align: justify;">&lt;VirtualHost 127.0.0.1:8080&gt;<br />
DocumentRoot &#8220;(1)&#8221;<br />
DirectoryIndex index.php<br />
&lt;Directory &#8220;(1)&#8221;&gt;<br />
AllowOverride All<br />
Allow from All<br />
&lt;/Directory&gt;</p>
<p style="text-align: justify;">Alias /sf &#8220;(2)&#8221;<br />
&lt;Directory &#8220;(2)&#8221;&gt;<br />
AllowOverride All<br />
Allow from All<br />
&lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;<br />
[/xml]<br />
Donde (1) es la ruta de la carpeta <em>web</em> de nuestro proyecto symfony y (2) es la ruta de la carpeta <em>web/sf</em> en nuestra instalación de symfony.</p>
<p style="text-align: justify;">Con esto, ya podríamos acceder a nuestro proyecto en nuestro navegador mediante <a href="http://localhost:8080/index.php" target="_blank">http://localhost:8080/index.php</a>.</p>
<p style="text-align: justify;">Sin embargo, si somos administradores del equipo, es mucho más interesante acceder mediante un nombre de dominio dedicado. Para ello, basta eliminar la declaración <em>Listen </em>y añadir la declaración <em>ServerName </em>al <em>VirtualHost</em>:<br />
[xml]<br />
NameVirtualHost 127.0.0.1:80</p>
<p style="text-align: justify;">&lt;VirtualHost 127.0.0.1:80&gt;<br />
ServerName nombreproyecto.localhost<br />
DocumentRoot &#8220;(1)&#8221;<br />
DirectoryIndex index.php<br />
&lt;Directory &#8220;(1)&#8221;&gt;<br />
AllowOverride All<br />
Allow from All<br />
&lt;/Directory&gt;</p>
<p style="text-align: justify;">Alias /sf &#8220;(2)&#8221;<br />
&lt;Directory &#8220;(2)&#8221;&gt;<br />
AllowOverride All<br />
Allow from All<br />
&lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;<br />
[/xml]<br />
Después tenemos que acceder al fichero <em>hosts </em>que se encuentra en &#8220;C:\WINDOWS\system32\drivers\etc\&#8221; y añadir la línea:<br />
[xml]<br />
127.0.0.1         nombreproyecto.localhost<br />
[/xml]<br />
(¡OJO! Si tenemos Windows Vista o Windows 7, para editar el archivo <em>hosts </em>tendremos que ejecutar nuestro editor de textos como administradores).</p>
<p style="text-align: justify;">Ahora podemos acceder a nuestro proyecto mediante <a href="http://nombreproyecto.localhost/index.php" target="_blank">http://nombreproyecto.localhost/index.php</a>.</p>
<p style="text-align: justify;">Si además hemos activado el módulo<em> mod_rewrite</em> en nuestro servidor Apache (descomentando la línea correspondiente en el archivo <em>httpd.conf</em>), entonces únicamente tendremos que teclear <a href="http://nombreproyecto.localhost" target="_blank">http://nombreproyecto.localhost</a>.</p>
<p style="text-align: justify;">Una vez que hemos realizado la configuración en Apache, sólo nos queda ir a las propiedades de nuestro proyecto en Netbeans y añadir el <em>Project URL</em> dentro de la opción <em>Run Configuration</em> para que cuando ejecutemos el proyecto (F6) se abra el navegador con la URL que acabamos de configurar.</p>
<img style='display:none' id="post-48-blankimage" onload="Meebo('discoverSharable', {element: ((this.parentNode.className.match('post')) ? this.parentNode : this.parentNode.parentNode) ,url:'http://www.osukaru.es/programacion/configuracion-de-apache-para-un-proyecto-symfony/',title:'Configuración de Apache para un proyecto Symfony',tweet:'Una vez que hemos creado un proyecto Symfony con Netbeans tenemos que configurar nuestro servidor Ap',description:'Una vez que hemos creado un proyecto Symfony con Netbeans tenemos que configurar nuestro servidor Ap'})"><script type='text/javascript'>document.getElementById("post-48-blankimage").onload();</script>]]></content:encoded>
			<wfw:commentRss>http://www.osukaru.es/programacion/configuracion-de-apache-para-un-proyecto-symfony/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Soporte para Symfony a partir de Netbeans 6.8</title>
		<link>http://www.osukaru.es/programacion/soporte-para-symfony-a-partir-de-netbeans-6-8/</link>
		<comments>http://www.osukaru.es/programacion/soporte-para-symfony-a-partir-de-netbeans-6-8/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 11:44:13 +0000</pubDate>
		<dc:creator>Osukaru</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.osukaru.es/?p=44</guid>
		<description><![CDATA[Aunque Netbeans había anunciado inicialmente que dará soporte para Symfony en la versión 7.0 del IDE, lo cierto es que ya desde las versiones de prueba de la 6.8 (en el primer Milestone y ya en la Beta) se puede comprobar esa integración. Si hemos hecho realizado la instalación de Symfony mediante PEAR, al ir [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Aunque Netbeans había anunciado inicialmente que dará soporte para Symfony en la versión 7.0 del IDE, lo cierto es que ya desde las versiones de prueba de la 6.8 (en el primer Milestone y ya en la Beta) se puede comprobar esa integración.</p>
<p style="text-align: justify;"><span id="more-44"></span>Si hemos hecho realizado la <a href="http://www.osukaru.es/2009/11/11/instalando-symfony-con-pear/">instalación de Symfony mediante PEAR</a>, al ir a Options&gt;Tools&gt;PHP&gt;Symfony veremos que  el recuadro &#8220;Symfony script&#8221; viene informado con la ruta \bin\php\php5.3.0\symfony. Ahora ya podemos crear un nuevo proyecto PHP en donde elegirimos a Symfony como framework.</p>
<img style='display:none' id="post-44-blankimage" onload="Meebo('discoverSharable', {element: ((this.parentNode.className.match('post')) ? this.parentNode : this.parentNode.parentNode) ,url:'http://www.osukaru.es/programacion/soporte-para-symfony-a-partir-de-netbeans-6-8/',title:'Soporte para Symfony a partir de Netbeans 6.8',tweet:'Aunque Netbeans había anunciado inicialmente que dará soporte para Symfony en la versión 7.0 del ',description:'Aunque Netbeans había anunciado inicialmente que dará soporte para Symfony en la versión 7.0 del '})"><script type='text/javascript'>document.getElementById("post-44-blankimage").onload();</script>]]></content:encoded>
			<wfw:commentRss>http://www.osukaru.es/programacion/soporte-para-symfony-a-partir-de-netbeans-6-8/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Instalando Symfony con PEAR</title>
		<link>http://www.osukaru.es/programacion/instalando-symfony-con-pear/</link>
		<comments>http://www.osukaru.es/programacion/instalando-symfony-con-pear/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 10:28:11 +0000</pubDate>
		<dc:creator>Osukaru</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.osukaru.es/?p=35</guid>
		<description><![CDATA[Para instalar Symfony mediante PEAR no hay más que añadir el canal de Symfony a PEAR: [shell]pear channel-discover pear.symfony-project.com[/shell] y ejecutar la orden de instalación: [shell]pear install symfony/symfony[/shell] Sin embargo, en ocasiones accedemos a Internet a través de un proxy, y esto hay que indicarselo a PEAR mediante la instrucción: [shell]pear config-set http_proxy http://user:pass@domain:port[/shell] document.getElementById("post-35-blankimage").onload();]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Para instalar Symfony mediante PEAR no hay más que añadir el canal de Symfony a PEAR:<br />
[shell]pear channel-discover pear.symfony-project.com[/shell]<br />
y ejecutar la orden de instalación:<br />
[shell]pear install symfony/symfony[/shell]<br />
<span id="more-35"></span><br />
Sin embargo, en ocasiones accedemos a Internet a través de un proxy, y esto hay que indicarselo a PEAR mediante la instrucción:</p>
<p style="text-align: justify;">[shell]pear config-set http_proxy http://user:pass@domain:port[/shell]</p>
<img style='display:none' id="post-35-blankimage" onload="Meebo('discoverSharable', {element: ((this.parentNode.className.match('post')) ? this.parentNode : this.parentNode.parentNode) ,url:'http://www.osukaru.es/programacion/instalando-symfony-con-pear/',title:'Instalando Symfony con PEAR',tweet:'Para instalar Symfony mediante PEAR no hay más que añadir el canal de Symfony a PEAR: [shell]pear ',description:'Para instalar Symfony mediante PEAR no hay más que añadir el canal de Symfony a PEAR: [shell]pear '})"><script type='text/javascript'>document.getElementById("post-35-blankimage").onload();</script>]]></content:encoded>
			<wfw:commentRss>http://www.osukaru.es/programacion/instalando-symfony-con-pear/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalando PEAR en WAMP (PHP 5.3.0)</title>
		<link>http://www.osukaru.es/programacion/instalando-pear-en-wamp-php-5-3-0/</link>
		<comments>http://www.osukaru.es/programacion/instalando-pear-en-wamp-php-5-3-0/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 08:54:21 +0000</pubDate>
		<dc:creator>Osukaru</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.osukaru.es/?p=30</guid>
		<description><![CDATA[PEAR es un repositorio de aplicaciones y extensiones PHP que nos servirá, entre otras cosas, para realizar la instalación recomendada de Symfony. Para instalarlo podríamos seguir estas instrucciones en las que nos lo explican con todo lujo de detalles. Sin embargo, si hemos instalado la última versión de WAMP (que en estos momentos viene con [...]]]></description>
			<content:encoded><![CDATA[<p>PEAR es un repositorio de aplicaciones y extensiones PHP que nos servirá, entre otras cosas, para realizar la instalación recomendada de Symfony. Para instalarlo podríamos seguir <a href="http://blog.phpleo.com/2007/08/02/instalando-pear-en-windows/">estas instrucciones</a> en las que nos lo explican con todo lujo de detalles. Sin embargo, si hemos instalado la última versión de WAMP (que en estos momentos viene con PHP 5.3.0) nos dará un error cuando ejecutamos el archivo go-pear.bat.</p>
<p><span id="more-30"></span>Parece ser (digo que lo parece porque no he tenido el suficiente interés en investigarlo) que el problema está en una línea que aparece comentada en el archivo php.ini por motivos de seguridad (concretamente ;phar.require_hash = On).  Para proceder con la instalación, en lugar de ejecutar el go-pear.bat, abrimos la consola de comandos, nos posicionamos en \<!-- BODY { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } P { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } DIV { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } TD { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } -->bin\php\php5.3.0 dentro del directorio de instalación de WAMP y ejecutamos en el comando <!-- BODY { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } P { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } DIV { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } TD { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } --><strong>php -d phar.require_hash=0 pear\go-pear.phar</strong>. Con esto podremos continuar la instalación sin ningún problema.</p>
<img style='display:none' id="post-30-blankimage" onload="Meebo('discoverSharable', {element: ((this.parentNode.className.match('post')) ? this.parentNode : this.parentNode.parentNode) ,url:'http://www.osukaru.es/programacion/instalando-pear-en-wamp-php-5-3-0/',title:'Instalando PEAR en WAMP (PHP 5.3.0)',tweet:'PEAR es un repositorio de aplicaciones y extensiones PHP que nos servirá, entre otras cosas, para r',description:'PEAR es un repositorio de aplicaciones y extensiones PHP que nos servirá, entre otras cosas, para r'})"><script type='text/javascript'>document.getElementById("post-30-blankimage").onload();</script>]]></content:encoded>
			<wfw:commentRss>http://www.osukaru.es/programacion/instalando-pear-en-wamp-php-5-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
