Desde hace varios años, Zend Framework se ha convertido en uno de los frameworks para PHP más populares del mundo. Con el respaldo de Zend Technologies, las alianzas con Adobe, Microsoft e IBM han fortalecido la estabilidad y soporte del framework.
¿Estás listo para llevar tus habilidades en PHP a un siguiente nivel? En este artículo le daremos un vistazo de alto nivel y crearemos nuestro primer proyecto con Zend Framework y la línea de comandos de Windows...
Introducción: ¿Qué es Zend Framework?
Zend Framework es un framework para PHP creado por Zend Technologies. Para aquellos que no están familiarizados con esta empresa, Zend Technologies provee a los desarrolladores web varias herramientas para ayudarlos en su labor. Algunos de estos productos son Zend Server, un servidor de aplicaciones web para ejecutar y manejar aplicaciones PHP, y Zend Studio, un muy buen IDE para PHP (basado en Eclipse).
Cómo pueden darse cuenta, Zend ha invertido en PHP, lo cual es claro indicio de por qué Zend Framework es un gran marco de trabajo que debe ser añadido a nuestro arsenal de herramientas como desarrolladores.
Características de Zend Framework
Entre las principales características que podemos mencionar, se encuentran:
- Basado en PHP
- Esta orientado a objetos
- Usa el paradigma MVC (aunque no al 100%)
- Es open source
- Ofrece un gran rendimiento
- Ofrece una capa de abstracción a bases de datos fácil de usar
- Facilita el acceso a los servicios web de distintas compañías como Google o Microsoft
- Cuenta con una gran comunidad de desarrolladores que contribuyen con el mantenimiento y mejora del proyecto
Por otra parte, Zend Framework esta creado a partir de una infinidad de librerías y clases. Lo que lo hace una espada de doble filo; por un lado, es sencillo para los desarrolladores utilizar sólo las librerías que se necesitan; pero por otra parte, configurar el framework por primera vez no esta tan fácil ya que estamos ante un montón de clases juntas. Es por ello que Zend cuenta con una herramienta para crear y estructurar nuestra aplicación, herramienta que vamos a utilizar más adelante.
1. Descargar Zend Framework
Lo primero que vamos a hacer es descargar Zend Framework. La versión actual es la 1.11.11. Para empezar, vamos al sitio web de Zend Framework y damos clic en el botón Download Now.
Esto nos llevará a una página con una lista de diferentes opciones para descargar Zend Framework. En el futuro, cuando actualicemos la librería de Zend Framework, deberemos descargar la versión Minimal, la cual contiene sólo los archivos ZF. Por ahora, vamos a descargar Zend Framework 1.11.11 Full, la cual contiene la librería con todas las demos y tests. Y también incluye la herramienta que usaremos luego en este tutorial.
2. Configurar el entorno de Zend Framework
Después de descargar Zend Framework, procederemos a extraer los archivos a nuestro escritorio a fin de observar su contenido. Dentro, encontraremos una gran cantidad de carpetas, pero para efectos de este tutorial, sólo necesitaremos dos: La carpeta bin y la carpeta library.
Para organizarnos bien, vamos a poner la carpeta bin dentro de nuestra carpeta PHP y la renombraremos como zend-bin.
- Si usas wamp PHP suele encontrarse en …\wamp\bin\php\php5.x…
- Si usas xampp, puedes agregarlo en …\xampp\php\…
Si realizaste la instalación de manera independiente, ubica la carpeta PHP donde este el ejecutable php.exe. En nuestro caso queda en D:\Development\PHP, por lo que la ubicación del binario de ZF es: D:\Development\PHP\zend-bin.
Ahora vamos a la carpeta library y dentro de ella veremos la carpeta Zend. Copiamos esta carpeta y la pegamos dentro del include_path de PHP (revisa o configura el fichero php.ini, de ser necesario). La ruta del include_path en nuestro caso apunta a: D:\Development\PHP\includes, por lo que la librería de Zend debería quedar en D:\Development\PHP\includes\Zend.
Finalmente, necesitamos configurar la herramienta Zend CLI (ubicada dentro de la carpeta zend-bin) para trabajar en cualquier directorio que querramos. Para hacer esto, necesitamos agregar la ruta de zend-bin a la variable PATH del sistema, así podremos ejecutarlo usando el prompt de Windows.
Damos clic derecho a Equipo en el menú Inicio, luego a Propiedades y se abrirá la ventana de información básica del equipo. Damos clic en el enlace Configuración avanzada del sistema.
En la ventana que se abre, damos clic en el botón Variables de Entorno. En la nueva ventana, miramos la variable Path en Variables del sistema. Le damos clic y agregamos la ubicación de nuestra carpeta zend-bin al final.
Cuando hayamos terminado, damos clic en OK y lo guardamos.
Para asegurarnos de que todo este funcionando correctamente, abrimos el prompt de windows y ejecutamos el comando zf --help. Esto debería mostrarnos los comando que podemos usar con la herramienta Zend CLI. Si nada aparece, deberemos reiniciar la PC para asegurarnos de que las variables del sistema han sido implementados.
OJO: Si la consola devuelve un mensaje indicando que no se reconoce a PHP como comando o programa de Windows (por que lo usan con Wamp o Xampp), deberán añadir la ruta a la carpeta donde se encuentre el archivo php.exe al PATH del sistema, realizando el mismo procedimiento que con Zend CLI.
Por otra parte, existe un archivo zf.sh dentro de la carpeta zend-bin. Este archivo es para configurar Zend Framework en sistemas operativos basados en Unix, como OSX o Linux. Sólo deberemos definir las variables de entorno para obtener el mismo resultado.
3. Mi primer proyecto con Zend Framework
Ahora, recién empezaremos con el desarrollo de nuestro proyecto con Zend Framework. En la línea de comandos, vamos al directorio donde queremos poner los archivos del proyecto (idealmente debería de ser el directorio donde nuestro servidor web apunta). Para este caso, vamos a D:\Development\htdocs\nettuts, por lo que escribimos cd D:\Development\htdocs\nettuts en el prompt y pulsamos Enter.
Con la siguiente línea crearemos la base de nuestro proyecto Zend Framework: zf create project thenextsocial. Donde thenextsocial es el nombre de nuestro proyecto. Así, cuando quieras crear tus propios proyectos, sólo deberás cambiar su nombre por el que corresponda.
Ahora nos vamos a la ruta del proyecto, ya debería aparecer la carpeta thenextsocial. Dentro de ella, podemos apreciar varias carpetas. De todos ellas, vamos a darle un vistazo a la carpeta public, la cual contiene sólo los documentos que serán accesibles a través del navegador. Para hacerlo más accesible, vamos a configurar un VirtualHost para el proyecto.
Para configurar un VirtualHost, abrimos el archivo httpd.conf de Apache y agregamos las siguientes líneas de código:
<VirtualHost *:80> ServerName thenextsocial.local DocumentRoot "D:/Development/htdocs/nettuts/thenextsocial/public/" <Directory "D:/Development/htdocs/nettuts/thenextsocial/public/"> </Directory> </VirtualHost>
Además, deberemos añadir el dominio a nuestro archivo hosts. Este archivo podemos ubicarlo en C:\Windows\System32\Drivers\etc si usamos Windows. O si eres usuario de un sistema basado en Unix, puedes entrar a /etc/hosts.
Abrimos el archivo hosts y agregamos la ruta thenextsocial.local y apuntamos a 127.0.0.1.
Reiniciamos el servidor web y abrimos la ruta http://thenextsocial.local en nuestro navegador, debería de aparecernos esto.
Felicitaciones, ya haz creado tu primer proyecto con Zend Framework! Si tienes alguna duda, déjala en los comentarios.
Fuentes | Zend Framework from Scratch | Understanding the Zend Framework
Hola!! siempre he querido a aprender a usar un framework en php, pero tengo una pregunta ya que se requieren tantas configuraciones (como si se fuera a programar en c++ con borland)¿que pasa con estas configuraciones en un servicio de hosting común y corriente a la hora de subir el proyecto final? funcionara la aplicacion, saludos!
Desde luego que funciona. Bueno, en todo caso hay que tener presente los requerimientos del framework (http://framework.zend.com/manual/en/requirements.introduction.html); por ejemplo, la versión actual requiere PHP 5.2.4 o superior y para el uso de ciertos componentes del framework se requieren ciertas extensiones de PHP. Teniendo esto en cuenta, en general, la mayoría de hostings con PHP 5.2.4+ son ideales para correr nuestras aplicaciones con Zend Framework. Saludos!
Para que tanto lio, no necesitas copiar ni pegar nada, solo con descomprimir donde quieras estara disponible las librerias, solo es necesario agregar el PATH al binario de Zend, cuando creas un proyecto automaticamennte tenes la estructura, solo necesitas indicarle a tu /public/index.php donde esta la libreria:
set_include_path(implode(PATH_SEPARATOR, array(
realpath('D:\Zend\ZendFramework-1.11.11\library'),
get_include_path(),
)));
Es la opcion mas fácil limpia y rapida, muchos se confunden con la otra propuesta sobre todo por que no es posible hacerlo en un server compartido.
Saludos.
Gracias por el tutorial, voy a seguirlos.
saludos!
Muchas gracias, me ha funcionado muy bien.
El tutorial está muy sencillo y completo para los que recién nos iniciamos en Zend.
Gracias de nuevo.