<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8097485804062249497</id><updated>2012-01-20T18:47:53.055-08:00</updated><category term='xampp'/><category term='Estructura Web Zend_Application'/><category term='PHP5'/><category term='php orientado a objetos'/><category term='Hola Mundo'/><category term='php'/><category term='Zend Framework Instalación'/><category term='NetBeans 7.0.1'/><category term='lenguajes de programación'/><title type='text'>Aprendiendo PHP5 :: Aprender PHP :: Aprender UML</title><subtitle type='html'>APRENDIENDO PHP5, en este Blog encontrarás información relacionada con PHP5, OPP, Patrones de diseño,UML,ZendFramework,Bases de Datos, CSS, JQuery y herramientas de trabajo.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://aprendiendophp5.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-4963019613063287812</id><published>2012-01-17T10:58:00.000-08:00</published><updated>2012-01-20T10:49:29.246-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Estructura Web Zend_Application'/><title type='text'>ZendFramework I -  Estructura del sitio</title><content type='html'>&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Estructura del proyecto &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-p3cGHARaHJY/TwozcMSZESI/AAAAAAAAAHo/BXA96b90yy4/s1600/zend17.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://4.bp.blogspot.com/-p3cGHARaHJY/TwozcMSZESI/AAAAAAAAAHo/BXA96b90yy4/s320/zend17.jpg" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Creando nuestro proyecto desde la consola D.O.S. o mediante Netbeans la estructura de la aplicación será como aparece en la gráfica.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;El directorio &lt;b&gt;application&lt;/b&gt; es el "contenedor" de nuestra aplicación bajo MVC, aquí estará el código de: modelos,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;vistas&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;controladores y archivos de configuración como&amp;nbsp;&lt;/span&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;application.ini &lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;y&lt;/span&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&lt;/b&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;Bootstrap.php.&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; text-align: justify;"&gt;De acuerdo a esta estructura Zend Framework 1.11.11 implementa&amp;nbsp;&lt;/span&gt;&lt;span style="background-color: whitesmoke; color: #333333; font-family: arial, sans-serif; font-size: 16px; text-align: justify;"&gt;&lt;b&gt;Zend_Application&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; text-align: justify;"&gt;&amp;nbsp;para facilitar la configuración de bases de datos, manejo de vistas( HTML), reuso de código, archivo de arranque con posibilidad de diferentes ambientes o entornos de trabajo (producción, desarrollo, pruebas),&lt;/span&gt;&lt;span style="background-color: whitesmoke; font-family: arial, sans-serif; font-size: 16px; text-align: justify;"&gt;registro de plugins, registro de action helpers y mucho más&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio &lt;/span&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;configs: &lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;este tiene por&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;defecto el archivo &amp;nbsp;&lt;/span&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;application.ini &lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;el cual &amp;nbsp;permite configurar entornos de la aplicación, ruta de la libreria, ruta de controladores.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Este directorio se puede contener diferentes archivos &lt;b&gt;.ini&lt;/b&gt; los cuales pueden ser&amp;nbsp;llamados desde el archivo &lt;b&gt;Bootstrap.php&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio &lt;b&gt;controllers: &lt;/b&gt;por defecto Zend_Tools crea IndexController y ErrorController. La clase IndexController tiene dos metodos init() e indexAction sin código a ejecutar.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;class IndexController extends Zend_Controller_Action&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;{&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp; public function init()&lt;/span&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* Initialize action controller here */&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp; public function indexAction()&lt;/span&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// action body&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio&lt;b&gt;&amp;nbsp;models: &lt;/b&gt;inicialmente vacio&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio&lt;b&gt; views: &lt;/b&gt;dentro de este se encuentra el directorio &lt;b&gt;helpers&lt;/b&gt;(ayudantes de las vistas que permiten reducir y simplificar código repetitivo)&amp;nbsp;y &amp;nbsp;&lt;b&gt;scripts, &lt;/b&gt;aquí&amp;nbsp;encontrará&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;por cada controller una carpeta y sus correspondientes vistas (código HTML).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio &lt;b&gt;Public: &lt;/b&gt;Es el directorio de acceso publico, dentro de él se pueden crear &amp;nbsp;subdirectorios css, javascripts, images. Es la entrada principal de la aplicación, para poder realizar esta función utiliza dos archivos .htaccess e index.php&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;Archivo .htaccess&lt;/b&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Al tener nuestro VirtualHost activo, todas las peticiones URL hacia nuestro proyecto pasaran por el archivo index.php, esto lo garantiza el archivo .htaccess,(este es un pequeño archivo de texto que permite modificar algunas directivas de Apache de directorios o archivos). La configuración por defecto de este archivo es:&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteEngine On&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteCond %{REQUEST_FILENAME} -s [OR]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteCond %{REQUEST_FILENAME} -l [OR]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteCond %{REQUEST_FILENAME} -d&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteRule ^.*$ - [NC,L]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;RewriteRule ^.*$ index.php [NC,L]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Directorio &lt;b&gt;Library:&lt;/b&gt; Es el lugar de ubicación de la libreria o clases del framework, cuando se trabaja de forma local lo recomendable es crear un sólo directorio con la libreria e incluir en el path la ruta y así evitamos la duplicidad en cada proyecto.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-4963019613063287812?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/4963019613063287812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/4963019613063287812'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2012/01/zendframework-i-estructura-del-sitio.html' title='ZendFramework I -  Estructura del sitio'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-p3cGHARaHJY/TwozcMSZESI/AAAAAAAAAHo/BXA96b90yy4/s72-c/zend17.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-202597230958626967</id><published>2012-01-06T09:22:00.000-08:00</published><updated>2012-01-06T09:40:30.524-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NetBeans 7.0.1'/><title type='text'>ZendFramework 0 Instalación NetBeans 7.0.1</title><content type='html'>&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;NetBeans 7.0.1 &amp;nbsp;&lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;IDE(integrated development environment)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Es la herramienta con la cual digitar nuestro código será mucho más fácil, aunque existen alternativas de pago como Zend Studio, NetBeans es uno de los entornos de desarrollo gratuitos mas potentes. Algunas de sus características:&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Soporte para JDK 7 (Java Development Kit)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Soporte HMTL 5&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Integración de recientes parches&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Mejoras de rendimiento.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Generate PhpDoc&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Rename refactoring, Safe Delete Refactoring&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;PHP 5.3 - Support for aliases&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://netbeans.org/downloads/index.html"&gt;Descargar Netbeans&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Para que NetBeans se sincronice con nuestro ZendFramework y se pueda utilizar Zend tools desde este IDE, vamos a la línea de comandos y digitamos:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&amp;nbsp;zf –setup config-file&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Dando como respuesta:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Config file written to \Documents and Settings\Administrador/.zf.ini&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Esto indica que ha creado dentro de nuestro directorio de usuario un archivo zf.ini que contiene algo similar a lo siguiente:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;php.include_path = ".;C:\zend\library;C:\xampp\php\PEAR"&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Creando nuestro primer proyecto ZF desde NetBeans&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Mediante las siguientes&amp;nbsp;imágenes&amp;nbsp;paso a paso crearemos nuestro proyecto desde NetBeans&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-eB8WizKbjoA/TwcmIKh-eFI/AAAAAAAAAGQ/4k8uENVW00Y/s1600/zend6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://1.bp.blogspot.com/-eB8WizKbjoA/TwcmIKh-eFI/AAAAAAAAAGQ/4k8uENVW00Y/s320/zend6.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Seleccionamos la pestaña general y verificamos que la ruta de ubicación de php.exe este correcta y adicionamos en el include path la ruta donde se encuentra la libreria de ZF&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-f43MLSB4a5g/TwcmuCpGyGI/AAAAAAAAAGY/kipAIChSM9U/s1600/zend7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-f43MLSB4a5g/TwcmuCpGyGI/AAAAAAAAAGY/kipAIChSM9U/s320/zend7.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Luego en la pestaña ZEND verificamos la ruta donde se encuentra el archivo zf.bat y damos click en Register Provider para activar el uso de Zend Tools, con esto modificamos nuestro archivo zf.ini creado anteriormente&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-s6rI-p3-3-o/TwcnWf0KxcI/AAAAAAAAAGg/omklLCw_dKo/s1600/zend8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-s6rI-p3-3-o/TwcnWf0KxcI/AAAAAAAAAGg/omklLCw_dKo/s320/zend8.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Despues de registrar el proveedor, se debe copiar el archivo NetBeansCommandsProvider.php que esta ubicado en C:\Archivos de programa\NetBeans 7.0.1\php\zend y lo debe pegar en el directorio donde se encuentra la librería de zf C:\zend\library si esto no se realiza y usted piensa utilizar la línea de comandos desde una consola, saldrá un error y no permitirá ejecutar comandos.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Con estos procedimientos listos, podemos iniciar la creación de nuestro proyecto.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-uDHKMQSw2pc/Twcqd3jw3RI/AAAAAAAAAGo/gTCQj2kKWro/s1600/zend9.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-uDHKMQSw2pc/Twcqd3jw3RI/AAAAAAAAAGo/gTCQj2kKWro/s320/zend9.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-7B3pesbF3SE/Twcrh1XDLdI/AAAAAAAAAGw/5c2GoV39IOw/s1600/zend10.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-7B3pesbF3SE/Twcrh1XDLdI/AAAAAAAAAGw/5c2GoV39IOw/s320/zend10.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Damos el nombre del proyecto y la ruta del&amp;nbsp;código&amp;nbsp;fuente, seleccionamos la versión de php y el encoding&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-SCpiCD6lqlc/TwcrzfzmnwI/AAAAAAAAAG4/D72CPRcxPoI/s1600/zend11.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://4.bp.blogspot.com/-SCpiCD6lqlc/TwcrzfzmnwI/AAAAAAAAAG4/D72CPRcxPoI/s320/zend11.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oL8nrfHUUoA/Twcr_VMPVUI/AAAAAAAAAHA/vBms8dQ9JCg/s1600/zend12.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-oL8nrfHUUoA/Twcr_VMPVUI/AAAAAAAAAHA/vBms8dQ9JCg/s320/zend12.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Seleccionamos el Framework a trabajar en este caso ZendPHP Web Framework&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-1QIil3o8oxQ/TwcsLVmSjwI/AAAAAAAAAHI/unQiQRtPw0s/s1600/zend13.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://3.bp.blogspot.com/-1QIil3o8oxQ/TwcsLVmSjwI/AAAAAAAAAHI/unQiQRtPw0s/s320/zend13.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Al presionar FINISH se creará toda la estructura de nuestro proyecto&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-z-ywAC5D6uo/Twcsa7E5IoI/AAAAAAAAAHQ/iTJj_bRZpbA/s1600/zend14.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="242" src="http://1.bp.blogspot.com/-z-ywAC5D6uo/Twcsa7E5IoI/AAAAAAAAAHQ/iTJj_bRZpbA/s320/zend14.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Verificamos la correcta configuración de Zend Tools de la siguiente forma: nos ubicamos en el nombre del proyecto, click derecho, opción &lt;b&gt;zend, &lt;/b&gt;ejecutar comando (Run Command)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-HXDg6lLQaUY/TwcwLXj38UI/AAAAAAAAAHY/buBG2IsgQPs/s1600/zend15.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="243" src="http://3.bp.blogspot.com/-HXDg6lLQaUY/TwcwLXj38UI/AAAAAAAAAHY/buBG2IsgQPs/s320/zend15.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Debe aparecer lo siguiente:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-K-pfoaxaRqo/TwcxNRoVMmI/AAAAAAAAAHg/zyH6KEmuT5U/s1600/zend16.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="247" src="http://4.bp.blogspot.com/-K-pfoaxaRqo/TwcxNRoVMmI/AAAAAAAAAHg/zyH6KEmuT5U/s320/zend16.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;De esta forma queda habilitada la posibilidad de ejecutar todos los comandos e interactuar mucho más fácil entre NetBeans y Zend Framework.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-202597230958626967?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/202597230958626967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/202597230958626967'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2012/01/zendframework-0-instalacion-netbeans.html' title='ZendFramework 0 Instalación NetBeans 7.0.1'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-eB8WizKbjoA/TwcmIKh-eFI/AAAAAAAAAGQ/4k8uENVW00Y/s72-c/zend6.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-380408481422561447</id><published>2012-01-06T08:21:00.000-08:00</published><updated>2012-01-07T06:49:20.580-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Zend Framework Instalación'/><title type='text'>ZendFramework 0</title><content type='html'>&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Aspectos generales.&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Framework,&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Compendio de librerías,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;módulos&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;o bibliotecas de software probadas, seguras y de uso recurrente en la programación, su estructura facilitan el desarrollo rápido de aplicaciones (RAD).&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif;"&gt;Zend Framework (ZF),&lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; es un framework 100% orientado a objetos basado en PHP 5, que implementa dentro de su estructura el&amp;nbsp;patrón&amp;nbsp;de diseño MVC( Modelo - Vista- Controlador), su baja dependencia entre sus&amp;nbsp;librerías&amp;nbsp;o componentes permite utilizarlas de manera independiente.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Instalación&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Previo a la instalación del ZF &amp;nbsp;se ha instalado XAMPP 1.7.3 para disponer de nuestro servidor Apache, php y MySQL, aunque esta disponible de forma gratuita&lt;a href="http://www.zend.com/en/products/server-ce/index"&gt; Zend Server Community Edition&lt;/a&gt;&amp;nbsp;(CE) versión 5.6 como opción alternativa.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="line-height: 17px;"&gt;Necesita descargar de &lt;a href="http://framework.zend.com/download/latest"&gt;http://framework.zend.com/download/latest&lt;/a&gt; &amp;nbsp;la versión Zend Framework 1.11.11 Full, aunque sólo utilizaremos dos directorios, esta versión trae demos y documentación importante para mejorar nuestros conceptos de este importante framework.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-w7T60Piu-Zk/TwcGpiN4-TI/AAAAAAAAAFg/puQ10leWueA/s1600/zend0.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://1.bp.blogspot.com/-w7T60Piu-Zk/TwcGpiN4-TI/AAAAAAAAAFg/puQ10leWueA/s320/zend0.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Para efectos de nuestro ejemplo creamos en C:\ un directorio (c:\zend) y copiamos los directorios&lt;/span&gt;&lt;b style="font-size: 15px; line-height: 17px;"&gt; bin&lt;/b&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt; y &lt;/span&gt;&lt;b style="font-size: 15px; line-height: 17px;"&gt;library&lt;/b&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;. El directorio &lt;/span&gt;&lt;b style="font-size: 15px; line-height: 17px;"&gt;bin &lt;/b&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;contiene el archivo zf.bat que nos&amp;nbsp;permitirá&amp;nbsp;utilizar Zend Tools desde la linea de comandos para crear proyectos, adicionar controladores, modelos, vistas, etc. El directorio &lt;b&gt;library &lt;/b&gt;contiene todas la clases propias del Framework.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Se debe adicionar al &lt;b&gt;&amp;nbsp;PATH&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;en variables de entorno la ruta de ubicación de php.exe, library y bin. para hacerlo nos ubicamos en &lt;b&gt;MiPC -&amp;gt;Propiedades -&amp;gt;Opciones Avanzadas-&amp;gt;Varaibles de Entorno&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-sdHL0myBrzU/TwcNVLf6jII/AAAAAAAAAFo/oMEV48udDtU/s1600/zend1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://3.bp.blogspot.com/-sdHL0myBrzU/TwcNVLf6jII/AAAAAAAAAFo/oMEV48udDtU/s320/zend1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;Los cambios en el&amp;nbsp;&lt;/span&gt;&lt;b style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;PATH&amp;nbsp;&lt;/b&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;tendrán&amp;nbsp;efecto&amp;nbsp;después&amp;nbsp;de reiniciar el sistema,&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&amp;nbsp;para verificar las modificaciones, abrimos una consola de texto y digitamos PATH&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-5y1CsYcYb7o/TwcQBANs8dI/AAAAAAAAAFw/uhpBeBFv8kQ/s1600/zend2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://3.bp.blogspot.com/-5y1CsYcYb7o/TwcQBANs8dI/AAAAAAAAAFw/uhpBeBFv8kQ/s320/zend2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Para verificar desde la línea de comandos la correcta instalación de ZF podemos digitar algunos comandos de zend tools.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;b&gt;C:\zf show versión&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;Zend Framework Version: 1.9.6&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Este comando muestra la versión instalada de ZF; en nuestro ejemplo aparece la versión 1.9.6 y debería aparecer 1.11.11, esto se debe a que algunas versiones de xampp tienen por defecto dentro del directorio PHP\PEAR una librería de ZEND, esta puede provocar algunos conflictos por ser una versión desactualizada. Para superar este inconveniente nos ubicamos dentro de la carpeta PHP de la instalación de xampp y abrimos el archivo &lt;b&gt;PHP.INI&lt;/b&gt; buscamos la linea&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;include_path = ".;C:\xampp\php\PEAR"&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;y le adicionamos como primer orden la ruta de la librería actualizada, con esto al solicitar nuevamente la versión mostrará la versión correcta.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;include_path = ".;C:\zend\library;C:\xampp\xampp\php\PEAR"&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;b&gt;C:\zf show versión&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;Zend Framework Version: 1.11.11&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Antes de comenzar a crear nuestro proyecto es importante practicar con la línea de comandos de Zend Tools, para comenzar utilizaremos&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;zf --help&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Esta línea nos mostrará todas las diferentes opciones que tenemos desde la línea de comandos, cómo debe ser la sintaxis para realizar las peticiones.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;zf show phpinfo&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Mostrará la configuración actual que tiene PHP, directivas y sus correspondientes valores, si esta activa o no algún tipo de soporte para funciones especificas, mejoramiento de la seguridad, etc.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;zf create project&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Su sintaxis completa es: &lt;b&gt;zf create project path name-of-profile file-of-profile&lt;/b&gt;&amp;nbsp;y para crear nuestro proyecto debemos estar dentro del directorio HTDOCS (xampp) que constituye la raíz de todos los proyectos a nivel local.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;como ejemplo crearemos nuestro proyecto "contabilidad"&amp;nbsp;así:&amp;nbsp;&lt;/span&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="color: #0b5394;"&gt;zf create project contabilidad&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Después de crear el proyecto debemos configurar el VHOST y si deseamos realizar pruebas unitarias debemos incluir en el include_path la ruta donde se encuentra PHPUnit.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;Imagen de la estructura del proyecto&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://3.bp.blogspot.com/-9CCvzcNpBtE/TwcYc_bvjzI/AAAAAAAAAF4/ekWYjjJTWH0/s1600/zend3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="179" src="http://3.bp.blogspot.com/-9CCvzcNpBtE/TwcYc_bvjzI/AAAAAAAAAF4/ekWYjjJTWH0/s320/zend3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Un archivo .zfproject.xml que guarda la información del proyecto&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;El directorio application donde están los directorios models,controllers, views, configs y el archivo Bootstrap.php&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Directorio docs, aquí se puede guardar documentación especifica o relevante del proyecto,&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Directorio library, aquí deberá estar el compendio de librerías de zendframework cuando el sitio es subido al servidor, para efectos de trabajo local este directorio estará vacio.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Directorio public, dentro de este estarán los directorios de imágenes, librerías javascript,Hojas de estilo CSS, el archivo index.php y .htacces&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;/span&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Ya creado el proyecto procedemos a configurar nuestro VIRTUAL HOST para que las peticiones desde nuestro navegador faciliten la ubicación de nuestro proyecto.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Primero vamos a &lt;b&gt;C:\WINDOWS\system32\drivers\etc\hosts&lt;/b&gt; y adicionamos&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;127.0.0.1 &amp;nbsp; contabilidad&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;127.0.0.1 &amp;nbsp; otroProyecto&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;..&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Ahora vamos al archivo httpd-vhosts.conf que se encuentra ubicado en &lt;b&gt;C:\xampp\apache\conf\extra&lt;/b&gt; y eliminamos el signo ‘#’ de la línea #NameVirtualHost *:80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Quedando así habilitada para crear nombre virtuales. Procedemos entonces a crear los diferentes vhost&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;virtualhost *:80=""&gt;&lt;/virtualhost&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;ServerName localhost&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;DocumentRoot "C:/xampp/htdocs/"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;ServerAdmin admin@localhost&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;virtualhost *:80=""&gt;&lt;/virtualhost&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; ServerName contabilidad&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; DocumentRoot "C:/xampp/htdocs/contabilidad/public"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; SetEnv APPLICATION_ENV "development"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &lt;directory "c:\xampp\htdocs\contabilidad\public"=""&gt;&lt;/directory&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DirectoryIndex index.php&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; AllowOverride All&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Order allow,deny&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Allow from all&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;serverName&lt;/b&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;El parámetro ServerName indica el nombre del Servidor que administra Apache, en otras palabras el sitio en cuestión; esto puede ser www.osmosislatina.com, www.google.com.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;DocumentRoot&lt;/b&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;El parámetro DocumentRoot indica el Directorio raíz del proyecto&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;DirectoryIndex:&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;El parámetro DirectoryIndex indica el primer archivo (index.php en este caso) que cargará apache. Es el punto de entrada a la aplicación web&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;AllowOverride All&lt;/b&gt;: Permite que todas las directivas .htaccess de ese directorio tengan prioridad sobre las establecidas en el archivo de configuración de apache. Si se cambia All por None, la configuración del nivel superior prevalece sobre la especificada en .htaccess. &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;Order allow, deny:&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;b&gt;Allow from all:&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;Indica el orden de permisos de las líneas siguientes, en este caso primero se pertime(allow)y luego de niega(deny), e inmediatamente debajo &amp;nbsp;allow from all, indicando que tiene permitido todas las peticiones.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Mod_Rewrite&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 17px;"&gt;Para que las peticiones hechas a&amp;nbsp;través&amp;nbsp;del navegador sean controladas por un solo archivo (index.php) debemos descomentar una linea del archivo httpd.conf que se encuentra ubicado en el directorio de apache\conf&lt;/span&gt;&lt;span style="color: white; font-family: Arial;"&gt;&lt;span style="font-size: 14px; line-height: 25px;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="color: white; font-family: Arial;"&gt;&lt;span style="font-size: 14px; line-height: 25px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;#LoadModule rewrite_module modules/mod_rewrite.so&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;De esta forma nuestra aplicación quedará habilitada para que el archivo .htaccess enrute todas las peticiones url hacia una sola entrada.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size: 15px; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Para que Apache actualice todos los cambios realizados, vamos al panel de administración de xampp y damos Click en &amp;nbsp;STOP en apache y reiniciamos el servicio dandole START&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px; text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://2.bp.blogspot.com/-Is8dV_qUc1I/TwcdtUVnLcI/AAAAAAAAAGA/M4U3f5240nk/s1600/zend4.jpg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="270" src="http://2.bp.blogspot.com/-Is8dV_qUc1I/TwcdtUVnLcI/AAAAAAAAAGA/M4U3f5240nk/s320/zend4.jpg" width="320" /&gt;&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Para verificar todo el procedimiento simplemente abrimos nuestro navegador y digitamos en la barra de direcciones http://contabilidad, y deberá aparecer la bienvenida de Zend Framework.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://1.bp.blogspot.com/-L_nm8oNz6nI/TwcfYn8A8_I/AAAAAAAAAGI/LkoZRryV6Dg/s1600/zend5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="286" src="http://1.bp.blogspot.com/-L_nm8oNz6nI/TwcfYn8A8_I/AAAAAAAAAGI/LkoZRryV6Dg/s320/zend5.jpg" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 15px; line-height: 17px;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-380408481422561447?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/380408481422561447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/380408481422561447'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2012/01/zendframework-0.html' title='ZendFramework 0'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-w7T60Piu-Zk/TwcGpiN4-TI/AAAAAAAAAFg/puQ10leWueA/s72-c/zend0.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-8607071209803307855</id><published>2010-07-10T18:31:00.000-07:00</published><updated>2010-07-10T18:44:28.473-07:00</updated><title type='text'>PHP Orientado a objetos II</title><content type='html'>Continuando… aunque algo demorado por compromisos laborales&lt;br /&gt;&lt;br /&gt;De la larga lista de términos que se emplean o aparecen cuando se habla de OPP se detallan los siguientes:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;AOO - DOO&lt;/b&gt;&lt;br /&gt;La Programación Orientada a Objetos debe estar soportada de antemano por un adecuado Análisis Orientado a Objetos(AOO) y un Diseño Orientado a Objetos(DOO) . El no tener en cuenta estos aspectos nuestros desarrollos serán inestables, inseguros y su costo de mantenimiento será excesivo. Por tal motivo es básico definir estos dos conceptos y pretender aclarar el panorama. &lt;br /&gt;Aunque dentro del Desarrollo de Software Orientado a Objetos existe una gran cantidad de opiniones y métodos sobre AOO y DOO, donde cada uno posee su proceso de análisis, diseño y notación o esquema para brindar un mejor acercamiento a un modelo eficaz, se ha tratado de unificar algunos conceptos pretendiendo fortalecer el Desarrollo de SW.&lt;br /&gt;&lt;b&gt;Explicación general AOO y DOO&lt;/b&gt;&lt;br /&gt;El&amp;nbsp; AOO investiga y construye un modelo del dominio del problema, identificando las clases y objetos del sistema, cómo se relacionan estos objetos y como se comportan dentro del dominio, este modelo busca dar una solución lógica desde el punto de vista de los objetos.&lt;br /&gt;El DOO es el paso siguiente del AOO donde transforma el análisis realizado en una especie de borrador o anteproyecto de la solución del dominio del problema. Desde aquí las clases identificadas serán creadas desde cero o reutilizadas según el contexto del problema.&lt;br /&gt;Dentro del DOO el diseño de los objetos es más especifico hacia el interior de las clases, se definen sus atributos o propiedades, sus operaciones o métodos y cómo responder a mensajes o estímulos.&lt;br /&gt;&lt;br /&gt;En el DOO aparecen los llamados &lt;b&gt;Patrones de Diseño&lt;/b&gt;, estos dan solución a problemas de diseño que se repiten una y otra vez. Históricamente proceden de modelos de arquitectura donde se pretendían reutilizar modelos de diseño ya aplicados, posteriormente W. Cunningham y Kent Beck vinculan esta idea&amp;nbsp; a la OPP. Para estudiarlos y manejarlos es básico tener conceptos de UML. En la Siguiente &lt;a href="http://www.mcdonaldland.info/files/designpatterns/designpatternscard.pdf"&gt;URL&lt;/a&gt; se encuentra una grafica con los patrones utilizados, describiendo su nombre y utilización. &lt;br /&gt;&lt;br /&gt;“Los patrones de diseño proponen una forma reutilizar la experiencia de los desarrolladores, para ello clasifica y describe formas de solucionar problemas que ocurren de forma frecuente en el desarrollo. Por tanto está basado en la recopilación del conocimiento de los expertos en desarrollo de software. &lt;br /&gt;No debe verse los Patrones de Diseño como una teoría o una corriente. No trata de tomar partido por una u otra alternativa. Es una experiencia real, probada y que funciona. Es Historia y nos ayuda a no cometer los mismos errores. ”&lt;br /&gt;&lt;br /&gt;&lt;b&gt;UML &lt;/b&gt;&lt;br /&gt;de Wikipedia&lt;br /&gt;“Lenguaje Unificado de Modelado (LUM) o (UML, por sus siglas en inglés, Unified Modeling Language) es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad; está respaldado por el OMG (Object Management Group). Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema. UML ofrece un estándar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocio y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes reutilizables.”&lt;br /&gt;&lt;br /&gt;UML mediante sus diagramas&amp;nbsp; facilita el aprendizaje de OPP, es más fácil ubicarse dentro del “plano” del sistema a realizar.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;ORM&lt;/b&gt; (Object Relational Mapping), es una técnica en la OPP que permite convertir&amp;nbsp; nuestros datos de una&amp;nbsp; Base de Datos Relacional en una Base de Datos Orientada a Objetos Virtual. Facilitando la persistencia. &lt;br /&gt;&lt;br /&gt;De estos temas en mención recomiendo grandes autores o ‘gurus’ como Martin Fowler, Kent Beck,&amp;nbsp; Ivar Jacobson , James Rumbaugh ,Grady Booch , Craig Larman, Coad/Yourdon, ellos con conceptos han liderado bases solidas para mejorar la calidad del Software. En la actualidad hay nuevas tendencias de metodologías llamadas agiles (Scrum, XP) que pretenden dar un giro en cuanto a la rapidez en el desarrollo de Software.&amp;nbsp;De mi parte y apoyándome en mucha información encontrada en Internet me he dedicado a profundizar sobre metodologias agiles y abordando "la programación extrema o XP()". aquí entra en cuestionamiento el uso de UML, según los eruditos en la materia el hecho de realizar proyectos con XP exime el uso de UML como ayuda para el análisis y el diseño orientado a objetos. Kent Beck el gran ‘guru’ sobre este tema difícilmente hace graficas de sus estructuras, otros como Martin Fowler sostiene que el diseño desde UML debería hacerse según las circunstancias, cada programador debe apoyarse o ayudarse según el contexto de la situación a resolver.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-8607071209803307855?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/8607071209803307855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/8607071209803307855'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2010/07/php-orientado-objetos-ii.html' title='PHP Orientado a objetos II'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-5510709545125938173</id><published>2010-02-16T11:02:00.000-08:00</published><updated>2010-07-10T16:28:18.890-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php orientado a objetos'/><title type='text'>PHP Orientado a objetos I</title><content type='html'>&lt;div style="text-align: justify;"&gt;Con la nueva versión del motor Zend Engine 2.0, PHP 5.3.1 trae consigo muchas ventajas respecto a su antecesor PHP 4 respecto al manejo de la Programación Orientada a Objetos (POO o OOP de Object Oriented Programming en ingles). Si todavía Usted programa en forma estructurada, sometiéndose a largas jornadas para realizar modificaciones a su código o ampliando sus funciones a estructuras cada vez más complejas, La POO sin lugar a dudas se convertirá en un aliado importante, ahorrando tiempo, reutilizando código y mejorando el rendimiento de sus sitios o aplicaciones Web. &lt;/div&gt;&lt;br /&gt;&lt;b&gt;PROGRAMACIÓN ORIENTADA A OBJETOS&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;La POO es un paradigma de programación o una forma especial y particular de desarrollar software donde el eje principal lo determina la construcción de objetos y sus relaciones. Esta forma de programación,  facilita la  reutilización y mantenimiento de código.  Se puede ampliar este concepto en &lt;a href="http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos"&gt;Wikipedia &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Según &lt;a href="http://es.wikipedia.org/wiki/Grady_Booch"&gt;Grady  Booch&lt;/a&gt; reconocido diseñador de software la programación orientada a objetos (POO) es,  "un método de implementación en el que los programas se organizan como colecciones cooperativas de objetos, cada uno de los cuales representa una instancia de alguna clase, y cuyas clases son, todas ellas, miembros de una jerarquía de clases unidas mediante relaciones de herencia". &lt;br /&gt;&lt;br /&gt;Con esta definición queda claro que al realizar un proyecto de software con programación orientada a objetos se debe tener especial atención a las relaciones entre objetos por medio de herencia. De lo contrario caeríamos en la programación basada en objetos. &lt;br /&gt;&lt;br /&gt;Para comprender y adentrarnos en el mundo de la POO se debe  tener claro algunos conceptos básicos que son fundamentales para un mejor aprendizaje &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Clase:&lt;/b&gt;   la clase se define como  la estructura básica de los objetos, las clases contienen un conjunto de variables llamadas propiedades o atributos y funciones llamadas métodos o comportamientos, además las clases pueden heredar de otras ciertos  comportamientos. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Objeto:&lt;/b&gt; un objeto es básicamente una instancia de una clase, es una abstracción que tiene información por medio de sus propiedades o atributos y comportamientos o acciones, por medio de sus métodos; cada objeto posee identidad que lo diferencia de los demás objetos, así sea instancia de una misma clase . &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mensajes:&lt;/b&gt; para que la POO sea funcional y  eficiente entre los diferentes objetos debe existir un medio de comunicación que facilite la interacción entre ellos, estos son los mensajes, estos hacen que los objetos tengan estados y comportamientos diferentes. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Herencia: &lt;/b&gt; esencialmente consiste en la creación de nuevas clases a partir de otras ya existentes. Estas nuevas clases pueden invocar comportamientos de la clase padre cumpliendo con uno de los pilares de la POO &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Polimorfismo&lt;/b&gt;: característica que permite a un objeto responder a un mensaje o evento en relación al numero de parámetros enviados al método de la clase. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Abstracción: &lt;/b&gt;esta es una de las fundamentales de la POO, donde se trabaja con las características de  funcionamiento de un objeto, más se desconoce su implementación interna. El ejemplo de esta característica se evidencia cuando se desarrolla una aplicación utilizando una Base de Datos MySQL y necesitamos que esta misma aplicación funcione en PostgreSQL o cualquier otra BD sin realizar cambios complejos en el código actual. Esto es conocido como capa de Abstracción de acceso a BD y  PHP 5 facilita este trabajo con PDO(PHP Data Objects) . &lt;/div&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Ejemplos &lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;$db = new PDO(‘mysql:host=localhost; dbname=mibasedatos’, ‘usuario’, ‘password’); &lt;br /&gt;&lt;br /&gt;$db = new PDO(‘pgsql:dbname=miBD host=localhost’, $user, $pass); &lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;Encapsulamiento:&lt;/b&gt; característica que permite a los atributos o propiedades de un objeto no ser visibles desde otros objetos, protegiendo el ESTADO  o el cambio de valor de estos. Los cambios de estado solo serán factibles desde métodos o comportamientos propios del objeto. &lt;/div&gt;&lt;br /&gt;&lt;b&gt;Cohesión&lt;/b&gt; en OOP es el grado de unión o relación de las funciones de una clase para la ejecución de una tarea, sin depender de otras, entre mas alta sea la cohesión mejor se trabajará OPP. La contraparte es el &lt;b&gt;Acoplamiento&lt;/b&gt; indicando la dependencia de otras clases para poder realizar un función específica, esta dependencias hacia otras clases hace que un sistema sea difícil de cambiar, actualizar o reutilizar. El acoplamiento debe ser lo más bajo posible&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;En la POO encontramos una gran variedad de palabras o siglas que se deben conocer o entender para así tener unas mejores bases y profundizar en conceptos más complejos.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-5510709545125938173?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/5510709545125938173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/5510709545125938173'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2010/02/php-orientado-objetos-i.html' title='PHP Orientado a objetos I'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-6453012406618618494</id><published>2009-11-08T13:52:00.001-08:00</published><updated>2009-11-08T13:56:28.036-08:00</updated><title type='text'>Reusabilidad de código 'Las Funciones'</title><content type='html'>&lt;div style="text-align: justify;"&gt;Uno de los errores o deficiencias en la creación y desarrollo de sitios y aplicaciones,  es la repetición de código, haciéndolo más complejo  además  la posibilidad de errores de lógica son más frecuentes y difíciles de encontrar. &lt;br /&gt;&lt;br /&gt;Las  “funciones” aparecen como pequeños subprogramas creados por los desarrolladores donde se pueden realizar  tareas de forma específica, para cada función una tarea o proceso. Esto facilita hacia el futuro encontrar o mejorar nuestro código. PHP  al igual que otros lenguajes  de programación tiene sus propias  funciones  nativas  que facilitan procesos de forma eficaz y rápida. &lt;a href="http://www.webtaller.com/manual-php/funciones_php.php"&gt;Ver manual PHP &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Dentro de la Programación Orientada a Objetos, las funciones son llamadas métodos  o comportamientos o acciones, realizando el mismo funcionamiento (realizar un tarea específica o proceso y retornando un valor).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Sintaxis&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?php &lt;br /&gt;&lt;/code&gt;&lt;br /&gt;//date es una funcion de PHP&lt;br /&gt;function getAnio() {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;$anio = date("Y");&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;return $anio;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;echo 'Este año es: '.getAnio();&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;Función con parámetros, el numero de parámetros depende&amp;nbsp; en sí de la tarea o proceso a resolver&lt;/b&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt; &amp;lt;?php&lt;br /&gt;&lt;br /&gt;function cumpleanio($anioNacimiento) {&lt;br /&gt;&amp;nbsp;$anioActual = date("Y");&lt;br /&gt;&amp;nbsp;$cumpleanio= $anioActual- $anioNacimiento;&lt;br /&gt;&amp;nbsp;return $cumpleanio;&lt;br /&gt;}&lt;br /&gt;echo cumpleanio(1962);&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;&lt;code&gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;function encontrarNombre($array,$buscarNombre) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $encontrado = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp; foreach($array as $nombre){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if($nombre == $buscarNombre){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $encontrado = 'Encontrado';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; if($encontrado == false){&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; $encontrado = 'No enontrado';&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;return $encontrado;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$buscarNombre = 'andres';&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;//Esto puede ser una variable que proviene de un formulario&lt;br /&gt;$nombres = array('carlos','andres','david','mariana');&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;//Esto puede estar en una Base de Datos&lt;br /&gt;echo "El usuario $buscarNombre ".encontrarNombre($nombres, $buscarNombre);&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;Funciones con parámetros  tipo variables:  pasar variable por valor o por referencia &lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;$edad =47;&lt;br /&gt;function&amp;nbsp;&amp;nbsp;cambiarEdadPorValor($edad){&lt;br /&gt;&amp;nbsp;return $edad++;&lt;br /&gt;}&lt;br /&gt;function&amp;nbsp;&amp;nbsp;cambiarEdadPorReferencia(&amp;amp;$edad){&lt;br /&gt;&amp;nbsp;return $edad++;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;cambiarEdadporValor($edad);&lt;br /&gt;print $edad;&lt;br /&gt;echo '&amp;lt;br&amp;gt;';&lt;br /&gt;cambiarEdadporReferencia($edad);&lt;br /&gt;print $edad;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;En&amp;nbsp; PHP5 cuando se pasa un Objeto como parámetro de una función o método siempre se pasa como referencia, indicando que cualquier modificación afectará el objeto en el tiempo de permanencia.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;En&amp;nbsp; el siguiente enlace se encuentra una variedad de ejemplos sobre funciones : &lt;a href="http://dev.fyicenter.com/faq/php/php_function_definition.php"&gt;Tips de Funciones &lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-6453012406618618494?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/6453012406618618494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/6453012406618618494'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/11/reusabilidad-de-codigo-las-funciones.html' title='Reusabilidad de código &apos;Las Funciones&apos;'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-4160961684529893497</id><published>2009-11-04T13:19:00.000-08:00</published><updated>2009-11-04T13:22:45.536-08:00</updated><title type='text'>Embeber Código PHP</title><content type='html'>&lt;div style="text-align: justify;"&gt;Ante la facilidad que tiene el lenguaje de programación PHP de "convivir"&amp;nbsp; o embeber su código con las Etiquetas&amp;nbsp; HTML, siempre he tenido latente la inquietud sobre cual será la forma correcta de escribir nuestro&amp;nbsp; código, éste deberá ser limpio y de facil lectura. Teniendo en cuenta las sugerencias realizadas por parte de surforce.com en el taller de desarrollo de Zend Framework y revisando el manual de PHP encontre "&lt;b&gt;Sintaxis alternativas de estructuras de Control&lt;/b&gt;". Aquí se expresa la sintaxis de las estructuras de control como if, while, for, foreach y switch.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Esta sintaxis esta más encaminada a &lt;a href="http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos"&gt;OPP&lt;/a&gt;, empleada en el &lt;a href="http://es.wikipedia.org/wiki/Patr%C3%B3n_de_dise%C3%B1o"&gt;patron de diseño&lt;/a&gt; &lt;a href="http://es.wikipedia.org/wiki/Modelo_Vista_Controlador"&gt;MVC &lt;/a&gt;dándole a la visualización de resultados (views o vistas) un mejor control.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;ejemplos:&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;code&gt;if&lt;/code&gt;&lt;/b&gt;&lt;/span&gt;&lt;code&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?php if($a &amp;gt; $b):?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;p&amp;gt;Resultado Verdadero&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php else:?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;p&amp;gt;Resultado Falso&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php endif; ?&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?php if ($this-&amp;gt;usuarioLogueado): ?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;div class="menu-opciones"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;ul&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href="&amp;lt;?php echo $this-&amp;gt;baseUrl;?&amp;gt;/noticias/noticias/agregar"&amp;gt;Agregar noticia&amp;lt;/a&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/li&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/ul&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php endif; ?&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;foreach&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?php foreach( $this-&amp;gt;faqs as $faq ): ?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;?php echo $faq-&amp;gt;id;?&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php endforeach;?&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;while&lt;/b&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;?php while ($i &amp;lt;=10):?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Sentencias...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php endwhile;?&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;for&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?php for($i = 1; $i &amp;lt;= 10;$i++):?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;H1&amp;gt;texto&amp;lt;/H1&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php endfor; ?&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Usted&amp;nbsp; como embebe codigo en sus aplicaciones Web?&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-4160961684529893497?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/4160961684529893497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/4160961684529893497'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/11/codigo-php-limpio.html' title='Embeber Código PHP'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-2650359849862711167</id><published>2009-11-01T18:23:00.000-08:00</published><updated>2009-11-01T18:47:42.499-08:00</updated><title type='text'>Type casting en PHP</title><content type='html'>&lt;div style="text-align: justify;"&gt;Lenguajes de programación de tipeado fuerte nos  indica que para poder utilizar las variables hay que declararlas previamente y determinar el TIPO de dato a contener.  En PHP no es necesario hacer estas declaraciones,  las variables empiezan por el signo $, deben contener solo caracteres alfanuméricos y empezar por letra, el uso de underscore o raya baja (_) solo esta permitida cuando en la declaración de atributos de una clase son privados o protegidos. &lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Cuando el nombre de la variable se compone de dos o mas palabras, la variable empieza con minúscula y la segunda con mayúscula (camelCaps).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Ejemplos&lt;br /&gt;&amp;nbsp;&lt;code&gt;&lt;br /&gt;// variables numericas&lt;br /&gt;$edad=15;&lt;br /&gt;echo $edad;&lt;br /&gt;&lt;br /&gt;//variables string o cadena&lt;br /&gt;&lt;br /&gt;$nombreUsuario='carlos';&lt;br /&gt;echo $nombreUsuario;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Esa flexibilidad de tipo puede ocasionar algunas dificultades o errores inesperados y en PHP 5 se puede utilizar dos maneras de darle tipo a las variables. la primera es mediante la manipulacion de tipos de la forma:&lt;br /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;$variable =(tipo de dato) dato o variable; &lt;br /&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Donde '&lt;i&gt;tipo de dato&lt;/i&gt;' puede tomar varias opciones entre otras:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;(int) para integer o numeros enteros&lt;/li&gt;&lt;li&gt;(string) para string o cadenas&lt;/li&gt;&lt;li&gt;(double) para datos decimales&lt;/li&gt;&lt;li&gt;(object) para objetos&lt;/li&gt;&lt;li&gt;(array) para vectores&lt;/li&gt;&lt;li&gt;(real) para numeros reales&lt;/li&gt;&lt;li&gt;(bool) para booleanos&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;&lt;code&gt; // variables numericas&lt;br /&gt;$edad=(int)15;&lt;br /&gt;echo $edad;&lt;br /&gt;&lt;br /&gt;//variables string o cadena&lt;br /&gt;$nombre=(string) 'Carlos';&lt;br /&gt;echo $nombre;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La otra opción de manipular el tipo de dato es mediante las funciones gettype y settype, estas obtiene el tipo de dato o asignan el tipo de dato respectivamente. &lt;br /&gt;&lt;/div&gt;&lt;code&gt; &lt;br /&gt;// variables numericas&lt;br /&gt;$edad = 15;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;/code&gt;echo gettype($edad);&lt;br /&gt;// sale integer&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$edad = '15';&lt;/pre&gt;&lt;pre&gt;//asignación de cadena 15 porque esta entre comillas&lt;br /&gt;&lt;br /&gt;echo gettype($edad);&lt;/pre&gt;&lt;pre&gt;// sale string&lt;br /&gt;settype($edad, 'integer');&lt;br /&gt;echo gettype($edad);&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;// sale integer&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;El conocimiento y aplicación de estas formas para asignar un tipo de dato específico a las variables, mejora el desarrollo de nuestras aplicaciones.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-2650359849862711167?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/2650359849862711167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/2650359849862711167'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/11/type-casting-en-php.html' title='Type casting en PHP'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-1520649068481236294</id><published>2009-10-30T15:46:00.000-07:00</published><updated>2009-10-30T16:31:19.418-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP5'/><category scheme='http://www.blogger.com/atom/ns#' term='Hola Mundo'/><category scheme='http://www.blogger.com/atom/ns#' term='xampp'/><title type='text'>Instalando Servidor Apache</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;b&gt;Instalación&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;PHP es un lenguaje de programación del lado del servidor, indicando con esto que nuestro sitio o aplicación Web tipo "&lt;b&gt;php&lt;/b&gt;" esta alojada en un servidor remoto (Hosting) y mediante cualquier navegador accedemos a ella, devolviendonos codigo HTML. Para realizar nuestras pruebas necesitamos emular este proceso dentro de una sola maquina, teniendo SERVIDOR y CLIENTE al mismo tiempo. Por tal motivo debemos instalar localmente un &lt;a href="http://es.wikipedia.org/wiki/Servidor_web"&gt;servidor Web&lt;/a&gt; , el más popular y fuerte es APACHE , además de éste, PHP y el Motor de bases de datos MYSQL estos tres componentes se pueden instalar de forma individual y despues configurar manualmente sus directivas, esta configuración manual puede quitarnos mucho tiempo, sobre todo si estamos empezando en estas faenas.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Hay varias soluciones para Windows y Linux que facilitan en un abrir y cerrar de ojos la instalación automatica de todos los componentes de nuestro servidor Web, algunos son:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt; &lt;a href="http://www.appservnetwork.com/"&gt;&lt;span style="font-size: small;"&gt;Appserv &lt;/span&gt;&lt;/a&gt;: en versión 2.5.10 trae Apache 2.2.8, PHP 5.2.6, MySQL 5.0.51b&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.easyphp.org/"&gt;EasyPHP&lt;/a&gt;: Versión 5.3 trae Apache 2.2.13, PHP 5.3.0, MySQL 5.1.37&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.wampserver.com/en/"&gt;WampServer:&lt;/a&gt; Versión 2.0i trae Apache 2.2.11, PHP 5.3.0, MySQL 5.1.36&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.apachefriends.org/"&gt;Xampp&lt;/a&gt;: Versión 1.7.2 trae&amp;nbsp; Apache 2.2.12, PHP 5.3.0, MySQL 5.1.37&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Para efectos de nuestra practica se debe descargar XAMPP para Windows, despues de tener el instalador en nuestro equipo procedemos a ejecutarlo. a continuación algunas imágenes de este proceso.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_K4WT8z9ds5w/Sus1wq04rzI/AAAAAAAAAEk/uDO4TtajHng/s1600-h/img1.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_K4WT8z9ds5w/Sus1wq04rzI/AAAAAAAAAEk/uDO4TtajHng/s320/img1.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_K4WT8z9ds5w/Sus2pqtBfYI/AAAAAAAAAEs/CsCaw-jZRzU/s1600-h/img2.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_K4WT8z9ds5w/Sus2pqtBfYI/AAAAAAAAAEs/CsCaw-jZRzU/s320/img2.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_K4WT8z9ds5w/Sus2341dajI/AAAAAAAAAE0/5dSXnTntkeY/s1600-h/img3.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_K4WT8z9ds5w/Sus2341dajI/AAAAAAAAAE0/5dSXnTntkeY/s320/img3.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;En esta etapa se solicita instalar &lt;b&gt;APACHE&lt;/b&gt; y &lt;b&gt;MYSQL&lt;/b&gt; como un &lt;b&gt;servicio&lt;/b&gt; de Windows,indicando que cada que inicie nuestra maquina se ejecutará automaticamente el proceso de carga del servidor apache y el motor de Base de Datos.&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Despues de finalizar el proceso de instalación, aparecerá el icono correspondiente. Al ejecutar este enlace aparecerá lo siguiente:&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_K4WT8z9ds5w/Sus53s40I4I/AAAAAAAAAE8/x8ewSYgmn34/s1600-h/img4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_K4WT8z9ds5w/Sus53s40I4I/AAAAAAAAAE8/x8ewSYgmn34/s320/img4.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;Se puede verificar que Apache y MySQL estan "RUNING" o activos y así poder&amp;nbsp; realizar las pruebas locales respectivas antes de subirlas al sitio en Internet.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Prueba Local&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Abrimos nuestro navegador preferido( &lt;b&gt;firefox &lt;/b&gt;) y digitamos la siguiente URL - http://localhost/ o http://127.0.01/ aparecerá el inicio de XAMPP y elegimos nuestro lenguaje.así llegamos al sitio local de xampp, donde podemos configurar todo el entorno de trabajo.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Recomendaciones&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;en &lt;b&gt;http://localhost/xampp/ &lt;/b&gt;en la parte izquierda superior encontramos unas opciones importantes tales como:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Estado, que indica que componente esta activo&lt;/li&gt;&lt;li&gt;Chequeo de seguridad:&amp;nbsp; determina que puntos son inseguros y cuales se deben cambiar, como por ejemplo asignarle clave al cliente gráfico de Mysql, PHPMYADMIN para que cualquier usuario no visualice las base de datos.&lt;/li&gt;&lt;li&gt;phpinfo: este es un script que al ejecutarse nos visualiza toda la configuración del entorno de trabajo de PHP, indicando el estado de las directivas de configuración, extensiones, ambiente de Apache,librerias, etc.&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Hola MUNDO &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Nuestro primer ejemplo de PHP es el mensaje tipico de introducción de cualquier lenguaje de programación&amp;nbsp; "Hola Mundo".&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Utilizando cualquier editor como por ejemplo :DEV-PHP&lt;/li&gt;&lt;li&gt;Archivo o file -&amp;gt; nuevo&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Digitar el siguiente Código para nuestro programa &lt;a href="http://es.wikipedia.org/wiki/Hola_mundo"&gt;hola mundo&lt;/a&gt;:&lt;/li&gt;&lt;/ul&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;code&gt;&lt;b&gt;1&lt;/b&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: black;"&gt; &lt;br /&gt;&amp;nbsp;&lt;span style="color: #0000bb;"&gt;&amp;lt;?php &lt;br /&gt;&lt;b&gt;2&lt;/b&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;b&gt;3&lt;/b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #007700;"&gt;echo&amp;nbsp;&lt;/span&gt;&lt;span style="color: #dd0000;"&gt;'Hola&amp;nbsp;Mundo'&lt;/span&gt;&lt;span style="color: #007700;"&gt;;&amp;nbsp;&lt;/span&gt; &lt;br /&gt;&lt;/span&gt; &lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Guardamos el archivo en &lt;b&gt;C:\xampp\htdocs\proyectophp\prueba.php&lt;/b&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;Lo podemos ver en el navegador en la siguiente URL : &lt;b&gt;http://localhost/proyectophp/prueba.php&lt;/b&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Con el servidor Web instalado realizaré algunos ejercicios de fundamentación básica y asi poder abordar temas de programación orientada a objetos.&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-1520649068481236294?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1520649068481236294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1520649068481236294'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/instalando-servidor-apache.html' title='Instalando Servidor Apache'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_K4WT8z9ds5w/Sus1wq04rzI/AAAAAAAAAEk/uDO4TtajHng/s72-c/img1.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-1177161036673830948</id><published>2009-10-22T14:28:00.000-07:00</published><updated>2009-10-22T14:28:23.623-07:00</updated><title type='text'>PHP5 Buena Elección II</title><content type='html'>La compañia &lt;a href="http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html"&gt;TIOBE&lt;/a&gt; dedicada a evaluar la calidad del software, desde hace algunos años ha realizado informes estadísticos sobre la proyección de los diferentes lenguajes y los paradigmas de programación. &lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;El paradigma orientado a objetos ganó respecto a las lenguas de procedimiento y funcionales.El lenguaje PHP en Octubre de 2009 obtuvo un merecido tercer puesto y según se informa, su tendencia ha en aumento.&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_K4WT8z9ds5w/SuDM9nzInRI/AAAAAAAAAEc/ScHHlGph9sE/s1600-h/estadisticas_6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_K4WT8z9ds5w/SuDM9nzInRI/AAAAAAAAAEc/ScHHlGph9sE/s320/estadisticas_6.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;En el siguiente post se inicia el proceso de instalación de nuestro servidor local o servidor de pruebas con XAMPP a partir de aquí se comprenderá las ventajas y bondades de este magnifico lenguaje de programación.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-1177161036673830948?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1177161036673830948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1177161036673830948'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/php5-buena-eleccion-ii.html' title='PHP5 Buena Elección II'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_K4WT8z9ds5w/SuDM9nzInRI/AAAAAAAAAEc/ScHHlGph9sE/s72-c/estadisticas_6.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-2885042781817493874</id><published>2009-10-08T10:00:00.000-07:00</published><updated>2009-10-08T10:43:11.982-07:00</updated><title type='text'>Estándares de código PHP</title><content type='html'>Mediante estos &lt;a href="http://manual.zfdes.com/es/coding-standard.html"&gt;estándares Zend&lt;/a&gt; unifica conceptos sobre las buenas costumbres a la hora de programar con PHP, evitando con esto perdidas de tiempo, mejorando el ciclo de vida de las aplicaciones, nuestro codigo será más limpio y de excelente calidad. Atendiendo a estas bases y mejorando el dominio sobre la programación orientada a objetos, dejaremos de lado el concepto de ser solo manejadores de &lt;a href="http://es.wikipedia.org/wiki/Script_%28inform%C3%A1tica%29"&gt;scripts&lt;/a&gt; a ser valorados como verdaderos programadores.&lt;br /&gt;&lt;br /&gt;Esta codificación expresa entre algunas las siguientes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Para archivos que contengan únicamente código &lt;acronym class="acronym"&gt;PHP&lt;/acronym&gt;,                 la etiqueta de cierre ("?&gt;") no está permitida.                 No es requerida por &lt;acronym class="acronym"&gt;PHP&lt;/acronym&gt;, y omitirla evita la inyección de                 espacios en blanco en la respuesta.             &lt;/li&gt;&lt;li&gt;&lt;h3 class="title"&gt;Variables&lt;/h3&gt; &lt;p&gt;                 Los nombres de variables pueden contener caracteres                 alfanuméricos. Las barras bajas (_) no están permitidas.                 Los números están permitidos en los nombres de variable pero no                 se aconseja en la mayoría de los casos.             &lt;/p&gt; &lt;p&gt;                 Para las variables de instancia que son declaradas con el                 modificador "private" o "protected", el primer carácter de la                 variable debe ser una única barra baja (_).                 Este es el único caso admisible de una barra baja en el nombre                 de una variable. Las variables declaradas como "public" no                 pueden empezar nunca por barra baja.             &lt;/p&gt; &lt;p&gt;                 Al igual que los nombres de funciones,                 los nombres de variables deben empezar siempre con una letra en                 minúscula y seguir la convención "camelCaps".             &lt;/p&gt; &lt;p&gt;                 Por norma general, se recomienda la elocuencia. Las variables                 deberían ser siempre tan elocuentes como prácticas para                 describir los datos que el desarrollador pretende almacenar en                 ellas. Variables escuetas como "$i" y "$n" están desaconsejadas,                 salvo para el contexto de los bucles más pequeños.                 Si un bucle contiene más de 20 líneas de código, las variables                 de índice deberían tener nombres más descriptivos.             &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Las etiquetas cortas (short tags) no se permiten nunca, este es el caso de algunas lineas  donde supuestamente se ahorra código:  se debería escribir , además el uso de etiquetas cortas puede presentar conflictos con XML.&lt;/li&gt;&lt;li&gt;&lt;h4 class="title"&gt;Cadenas Literales de Caracteres&lt;/h4&gt; &lt;p&gt;                     Cuando una cadena es literal (no contiene sustitución de                     variables), el apóstrofo o "comilla" debería ser usado                     siempre para delimitar la cadena:     &lt;/p&gt; &lt;pre class="programlisting"&gt;&lt;code&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$a &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;'Example String'&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&lt;li&gt;  &lt;div class="sect3" lang="es"&gt; &lt;div class="titlepage"&gt;&lt;div&gt;&lt;div&gt;&lt;h4 class="title"&gt; &lt;a name="coding-standard.coding-style.strings.literals-containing-apostrophes"&gt;&lt;/a&gt; Cadenas Literales de Caracteres  que Contengan Apóstrofos&lt;/h4&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;p&gt;                     Cuando una cadena literal de caracteres contega apóstrofos,                     es permitido delimitar la cadena de caracteres con "comillas dobles".                     Esto es especialmente útil para sentencias &lt;code class="constant"&gt;SQL&lt;/code&gt;:     &lt;/p&gt; &lt;pre class="programlisting"&gt;&lt;code&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$sql &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"SELECT `id`, `name` from `people` WHERE `name`='Fred' OR `name`='Susan'"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt; &lt;p&gt;                    En esta sintáxis es preferible escapar apóstrofes,                     ya que es mucho más fácil de leer.                 &lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;La lista no es larga pero si lo suficientemente clara, y siendo consecuentes TENEMOS que dejar guiarnos por los lideres del proyecto, así como Microsoft tiene el poder sobre sus herramientas de desarrollo y da unos patrones para darle solución a determinados proyectos, Zend hace lo mismo con PHP, encausemos nuestro trabajo por el lado de bien.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-2885042781817493874?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/2885042781817493874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/2885042781817493874'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/estandares-de-codigo-php.html' title='Estándares de código PHP'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-1109787251848125389</id><published>2009-10-07T07:46:00.000-07:00</published><updated>2009-10-07T10:57:46.816-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lenguajes de programación'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP5 Buena Elección!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_K4WT8z9ds5w/Ssyr45jTR9I/AAAAAAAAACc/ZxZzTyeHJto/s1600-h/php-med-trans-light.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 157px; height: 84px;" src="http://1.bp.blogspot.com/_K4WT8z9ds5w/Ssyr45jTR9I/AAAAAAAAACc/ZxZzTyeHJto/s320/php-med-trans-light.gif" alt="" id="BLOGGER_PHOTO_ID_5389871848065550290" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Desde los inicios de este lenguaje de programación las cosas han cambiado y mejorado sustancialmente en las versiónes 5.x (actualmente la versión liberada es la 5.3.0), el número de ventajas es cada vez mayor entre algunas: es y seguirá Open source al menos eso espero, el soporte para Programación Orientada a Objetos es superior  a las anteriores versiones, La velocidad de ejecución es mayor, puede manejar SQLite, mediante una nueva extensión puede manejar diversas Bases de Datos (PHP Data Objects), soporte para namespaces,  creación de funciones anónimas,  operador goto creación dinamica de métodos y funciones (Overloading),  La libreria SPL(Standard PHP Library)  en esta nueva versión no puede ser desactivada. Esto por el lado de su desarrollo y evolución, otro punto de vista  que nos permitirá tener una buena elección, son las estadísticas, finalmente nos brindan una valiosa información de algún tema en particular.  A continuación podemos ver las diferentes gráfcas sobre utilización de PHP, tendencias de los lenguajes de programación, utilización de servidores, etc. ( las gráficas estadísticas son tomadas de http://www.nexen.net  http://news.netcraft.com/&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Las gráficas corresponden  a la utilización en Internet de PHP y a &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_K4WT8z9ds5w/SszU-xXEdaI/AAAAAAAAADU/WTWKAay3kDQ/s1600-h/estadisticas_2.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 181px;" src="http://2.bp.blogspot.com/_K4WT8z9ds5w/SszU-xXEdaI/AAAAAAAAADU/WTWKAay3kDQ/s320/estadisticas_2.jpg" alt="" id="BLOGGER_PHOTO_ID_5389917028922717602" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;servidores de alto nivel&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_K4WT8z9ds5w/SszVReGtldI/AAAAAAAAADc/3Les68UhlaI/s1600-h/estadisticas.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 242px;" src="http://1.bp.blogspot.com/_K4WT8z9ds5w/SszVReGtldI/AAAAAAAAADc/3Les68UhlaI/s320/estadisticas.jpg" alt="" id="BLOGGER_PHOTO_ID_5389917350171350482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La gráfica  muestra la cantidad de proyectos subidos a SourceForge según el lenguaje de programación utilizado.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_K4WT8z9ds5w/SszVlRMEyiI/AAAAAAAAADk/n3CblRjFnzk/s1600-h/estadisticas_3.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 203px;" src="http://4.bp.blogspot.com/_K4WT8z9ds5w/SszVlRMEyiI/AAAAAAAAADk/n3CblRjFnzk/s320/estadisticas_3.jpg" alt="" id="BLOGGER_PHOTO_ID_5389917690301565474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Las siguientes Imágenes son tomadas  de los más grandes portales de trabajo o desarrollo freelance, muestran como PHP es líder indiscutible en la solicitud de proyectos.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_K4WT8z9ds5w/SszWLVQT2BI/AAAAAAAAADs/QcHh90fSuxk/s1600-h/estadisticas_4.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 203px;" src="http://3.bp.blogspot.com/_K4WT8z9ds5w/SszWLVQT2BI/AAAAAAAAADs/QcHh90fSuxk/s320/estadisticas_4.jpg" alt="" id="BLOGGER_PHOTO_ID_5389918344228100114" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_K4WT8z9ds5w/SszWX0T8IlI/AAAAAAAAAD0/QEyohfFwwJo/s1600-h/estadisticas_5.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 203px;" src="http://2.bp.blogspot.com/_K4WT8z9ds5w/SszWX0T8IlI/AAAAAAAAAD0/QEyohfFwwJo/s320/estadisticas_5.jpg" alt="" id="BLOGGER_PHOTO_ID_5389918558723252818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Además grandes aplicaciones de alto prestigio estan desarrolladas en PHP5 tales como facebook, OsCommerce, WordPress, sistemas operativos online (EyeOS) y Moodle entre otras, en honor a la verdad la lista es demasiado extensa. Creo que desde este punto de vista utilizar PHP5 es una buena elección!!&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-1109787251848125389?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1109787251848125389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1109787251848125389'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/php5-buena-eleccion.html' title='PHP5 Buena Elección!!'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_K4WT8z9ds5w/Ssyr45jTR9I/AAAAAAAAACc/ZxZzTyeHJto/s72-c/php-med-trans-light.gif' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-6806426684112856773</id><published>2009-10-05T11:10:00.001-07:00</published><updated>2009-10-06T10:43:49.589-07:00</updated><title type='text'>Herramientas de trabajo</title><content type='html'>&lt;div style="text-align: justify;"&gt;En internet contamos con una gran cantidad de aplicaciones que nos facilitan el aprendizaje de nuevos conceptos, mejoran la calidad de nuestro desarrollo y en algunos casos el concepto de ser gratis nos llama mucho la atención. La mayoria de ejemplos realizados en los temas propuestos para este Blog utilizan las herramientas descritas a continuación.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://es.wikipedia.org/wiki/Uml"&gt;UML&lt;/a&gt; :&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt; &lt;span style="font-weight: bold;"&gt;ArgoUML&lt;/span&gt; es una aplicación de diagramado de UML escrita en Java y publicada bajo la Licencia BSD open source. Dado que es una aplicación Java, está disponible en cualquier plataforma soportada por Java. &lt;a href="http://argouml.tigris.org/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Dia &lt;/span&gt;es una aplicación informática de propósito general para la creación de diagramas, desarrollada como parte del proyecto GNOME. Está concebido de forma modular, con diferentes paquetes de formas para diferentes necesidades. Dia está diseñado como un sustituto de la aplicación comercial Visio de Microsoft. Se puede utilizar para dibujar diferentes tipos de diagramas. Actualmente se incluyen diagramas entidad-relación, &lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;diagramas UML&lt;/span&gt;, diagramas de flujo, diagramas de redes, diagramas de circuitos eléctricos, etc. Nuevas formas pueden ser fácilmente agregadas, dibujándolas con un subconjunto de SVG e incluyéndolas en un archivo XML. &lt;a href="http://live.gnome.org/Dia/Download"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;StarUML es Open Source y se constituye en una de las mejores herramientas de modelado UML, rápidas, flexible y escalable. &lt;a href="http://staruml.sourceforge.net/en/download.php"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado"&gt;IDE&lt;/a&gt;  (&lt;b&gt;Entorno de desarrollo integrado&lt;/b&gt;, en inglés, &lt;i&gt;Integrated Development Environment&lt;/i&gt; )&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;NetBeans&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;IDE&lt;/span&gt; es un entorno de desarrollo - una herramienta para que los programadores puedan escribir, compilar, depurar y ejecutar programas. Está escrito en Java - pero puede servir para cualquier otro lenguaje de programación. Existe además un número importante de módulos para extender el NetBeans IDE.  NetBeans IDE es un producto libre y gratuito sin restricciones de uso.&lt;a href="http://www.netbeans.org/index_es.html"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="packageTitle" href="http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/SR1/eclipse-php-galileo-SR1-win32.zip"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Eclipse for PHP Developers&lt;/span&gt; otro magnifico IDE con variedad de herramientas de apoyo al desarrollador de aplicaciones Web. &lt;a href="http://www.eclipse.org/downloads/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Dev-PHP&lt;/span&gt; es una excelente alternativa para trabajar PHP, trae ayudas indispensables que facilitan al programador salir de dificultades. &lt;a href="http://devphp.sourceforge.net/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://es.wikipedia.org/wiki/Servidor_web"&gt;Servidor Web &lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Nuestro enfoque esta sobre el &lt;a href="http://es.wikipedia.org/wiki/Servidor_HTTP_Apache"&gt;servidor Web Apache&lt;/a&gt; y para ser instalado en nuestro equipo de prueba necesitamos igualmente PHP, MYSQL, estos se pueden instalar de forma individual pero teniendo a la mano una aplicación que lo hace en menos de 5 minutos y que configura todo por nosotros, pues no hay razón de perder tiempo. La aplicación se llama &lt;a href="http://es.wikipedia.org/wiki/XAMPP"&gt;&lt;span style="font-weight: bold;"&gt;XAMPP&lt;/span&gt;&lt;/a&gt;  es totalmente gratuita, multiplataforma. &lt;a href="http://www.apachefriends.org/en/xampp-windows.html"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://es.wikipedia.org/wiki/Framework"&gt;Framework&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Un framework, en el desarrollo de software, es una estructura de soporte definida, mediante la cual otro proyecto de software puede ser organizado y desarrollado. Típicamente, puede incluir soporte de programas, bibliotecas y un lenguaje interpretado entre otros software para ayudar a desarrollar y unir los diferentes componentes de un proyecto.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Para nuestro caso trabajaremos con &lt;a href="http://framework.zend.com/"&gt;Zend Framework&lt;/a&gt; , &lt;a href="http://cakephp.org/"&gt;CakePHP&lt;/a&gt; y para ejemplos de javascript trabajaremos con &lt;a href="http://jquery.com/"&gt;JQuery&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Clientes MySQL&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Para administrar nuestra base de datos en forma gráfica existen diversas aplicaciones que con solo un click hacemos maravillas. hay que tener en cuenta que al instalar nuestro servidor Web con XAMPP se adiciona un cliente "phpMyAdmin" que es gráfico y muy bueno.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.mysql-hispano.org/page.php?id=21&amp;amp;pag=8"&gt;&lt;/a&gt;&lt;a href="http://www.webyog.com/en/"&gt;SQLyog&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://dbdesigner.sourceforge.net/"&gt;DbDesigner&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Documentación Oficial&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Manual PHP. La solución a muchos de los problemas o contratiempos en el desarrollo de nuestras aplicaciones la encontramos siempre en el manual oficial. &lt;a href="http://www.php-es.com/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Manual de Zend Framework. &lt;a href="http://manual.zfdes.com/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Manual MySQL. &lt;a href="http://dev.mysql.com/doc/refman/5.0/es/"&gt;Descargar&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Estas herramientas constituyen nuestro apoyo teorico, si queda pendiente alguna la comentaré en breve.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-6806426684112856773?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/6806426684112856773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/6806426684112856773'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/herramientas-de-trabajo.html' title='Herramientas de trabajo'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-8097485804062249497.post-1391457935424982055</id><published>2009-10-04T07:21:00.000-07:00</published><updated>2009-10-09T06:58:15.831-07:00</updated><title type='text'>Bienvenidos  Aprendiendo PHP5</title><content type='html'>Bienvenidos, desde hace algún tiempo la idea de tener en Internet, comentarios, aportes u opiniones estaba latente, hoy emprendo esta tarea con la firme convicción de compartir conceptos y aprender de los visitantes de este Blog. El tema del Blog "APRENDIENDO PHP5" pretende trasmitir  de forma simple y paso a paso conceptos sobre el lenguaje programación PHP5, UML, programación orientada a objetos -OPP, patrones de diseño, manejo de IDE´s , Zend Framework y herramientas que facilitarán el trabajo en el desarrollo de sitios y aplicaciones Web.&lt;br /&gt;&lt;br /&gt;Una de las personas que me ayudo a tomar la decisión de dedicarle tiempo a este Blog es &lt;a href="http://phpsenior.blogspot.com/"&gt;Enrique place&lt;/a&gt;, quien con sus avanzados conocimientos, sus respuestas concretas y su puntual lexico, facilitaron un reordenamiento de mis ideas acerca de lo que debería saber un programador. Más que elogios hacia el Sr Place son agradecimientos.&lt;br /&gt;&lt;br /&gt;A &lt;a href="http://www.illasaron.com/"&gt;Jesús Conde&lt;/a&gt; quien de forma altruista ha promulgado que el conocimiento es libre, facilitando sus cursos por uno de los mejores medios de comunicación, los Videotutoriales.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8097485804062249497-1391457935424982055?l=aprendiendophp5.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1391457935424982055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8097485804062249497/posts/default/1391457935424982055'/><link rel='alternate' type='text/html' href='http://aprendiendophp5.blogspot.com/2009/10/bienvenidos-aprendiendo-facil.html' title='Bienvenidos  Aprendiendo PHP5'/><author><name>AprendiendoPHP5</name><uri>http://www.blogger.com/profile/11332979355198636516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_K4WT8z9ds5w/Ss-cBewLBKI/AAAAAAAAAD8/PN6QCQHFg3A/S220/foto1a.jpg'/></author></entry></feed>
