SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
INSTITUTO TECNOLOGICO DE TEHUACAN 
INGENIERIA EN SISTEMAS COMPUTACIONALES 
PROGRAMACIÓN WEB - ZanPHP - FRAMEWORK 
EQUIPO: 
Zan PHP -- by MilkZoft 
- JUAN FRANCISCO JIMENEZ JIMENEZ 
- EDMUNDO EMMANUEL MONTALVO VALDIVIA
INTRODUCCIÓN. 
ZanPHP es un framework de desarrollo ágil de aplicaciones Web escrito 
en PHP5 que utiliza diferentes patrones de diseño y las mejores 
prácticas para crear aplicaciones más rápidamente con buena calidad 
del código. 
Algunas de las ventajas de ZanPHP son: 
Fácil de instalar y configurar 
Fácil de aprender 
Usted puede crear casi cualquier tipo de aplicaciones web 
Compatible con diferentes plataformas 
Orientado a objetos 
Utiliza muchos patrones de diseño y las mejores prácticas para producir 
código de mayor calidad 
Aplicaciones escalables y fáciles de mantener 
Documentación en Inglés y Español 
Integración con jQuery y jQuery Mobile, Ajax y otras nuevas tecnologías 
Es software libre 
Requisitos del servidor 
PHP 5.1.x o superior 
Bases de datos soportadas: MySQL, MySQLi, MsSQL, Oracle, PostgreSQL y SQLite 
Créditos 
ZanPHP fue desarrollado por Carlos Santana (CEO de 
MilkZoft). ZanPHP fue desarrollado en 2009, pero fue hasta julio de 
2011 que se llevó a la decisión de liberarlo como software 
libre. Actualmente el desarrollo de ZanPHP es mantenido por el equipo 
de desarrollo y colaboradores de la comunidad MilkZoft. Cuenta con la 
implementación de las mejores prácticas para desarrollar aplicaciones 
más rápido y con mayor calidad.
INSTALACIÓN. 
Para empezar a trabajar con ZanPHP, el primer paso necesario es para 
descargarlo. Conseguir ZanPHP es fácil, sólo tiene que descargar el .zip 
de: https://github.com/MilkZoft/ZanPHP o clone con git ejecutando el 
comando: 
git clone git@github.com:MilkZoft/ZanPHP.git 
El siguiente paso es establecer las constantes de 2 archivos de 
configuración. Estos archivos se encuentran en: / www / config 
El primer archivo a modificar es el /www/config/config.example.php 
usted debería cambiar o verificar que las siguientes constantes tengan 
un valor correcto: 
[“domain”]: sirve para especificar el dominio que nuestro sitio tendrá. 
[“modRewrite”]: alterna la estilización de las URL (verdadero o falso). 
[“webURL”]: URL le permite configurar el sitio en general será útil para 
cargar imágenes, secuencias de comandos, etc. 
[“defaultApplication”]: permite configurar la aplicación web por defecto 
[“webSituation”]: alterna el acceso al sitio web (activo o inactivo) 
[“webLanguage”]: configurar el idioma predeterminado del sitio web 
El segundo archivo para configurar es /www/config/ 
database.example.php con los valores correctos para las siguientes 
constantes: 
“DB_DRIVER”: nos permite especificar el controlador de base de datos a 
utilizar. 
“DB_HOST”: nos permite configurar el host donde el servidor de base de datos 
(normalmente localhost). 
“DB_USER”: el usuario se conecte a la base de datos. 
“DB_PWD”: contraseña para conectarse a la base de datos.
“DB_DATABASE”: el nombre de la base de datos a la que se conectará. 
“DB_PORT”: puerto base de datos. 
“DB_PREFIX”: el prefijo nuestras mesas tienen. 
Una vez que estos pasos, tenemos ZanPHP listo para trabajar, sólo es 
cuestión de empezar a crear aplicaciones. 
Modelo Vista Controlador 
ZanPHP implementa uno de los patrones de diseño utilizados en la 
actualidad por la mayoría de los FRAMEWORKS de desarrollo web. Este 
modelo, denominado MVC (Modelo Vista Controlador), implementado 
como HMVC en ZanPHP, significa que, básicamente, el desarrollo se 
divide en 3 partes principales: un modelo, una visión y un controlador, 
solo que el equipo de milkzoft le ha agregado una caracteristica de 
jerarquia que permite tener varios modelos, varias vistas y varios 
controladores simultáneos para una sola aplicación. A continuación se 
explica cada concepto en el MVC. 
Modelo 
Esta clase contendrá todas las funciones encomendadas a interactuar 
con la estrategia de negocio de nuestra aplicación y por lo tanto el 
tratamiento de los datos, en términos más técnicos, llevará a cabo 
todos los tratamientos en nuestro identificador de datos de aplicaciones 
(consultas, inserciones, actualizaciones y borrados). En sí, se refiere no 
solo a bases de datos, sino a Web Services o documentos de diversos 
tipos que puedan contener datos o resultados de consultas, y que 
representen informacion relevante para nuestra aplicación. 
Vista 
Las vistas son responsables de la visualización de datos para el usuario, 
pero también pueden ser utilizadas para solicitar datos, por supuesto,
esto de acuerdo a lo que se especifique. En el MVC aplicado al desarrollo 
web puede ser descrito como el encargado de mostrar datos HTML 
incluyendo su correspondiente estilo en CSS o Javascript. 
Controlador 
Esta clase es el administrador del flujo de la aplicación, es la encargada 
de recibir solicitudes de los usuarios, identificar, procesar, enviar, llamar 
a los métodos del modelo y devolver datos al usuario a través de una 
vista. 
En ZanPHP el MVC se aplica dentro de cada aplicación, debe crear dos 
archivos en la carpeta de la aplicación: controller.application.php 
model.application.php y también los archivos de vistas deben estar 
dentro de la carpeta "vistas" de cada aplicación y ser nombradas 
utilizando la siguiente convención: view.myview.php. 
Archivos Estructura 
www 
Este directorio es el que contiene todas las aplicaciones desarrolladas 
con ZanPHP, además de incluir archivos de la biblioteca, hay diferentes 
tipos de archivos, entre los que destacan: las hojas de estilo, bibliotecas 
externas, plantillas, imágenes y los archivos de cada aplicación. 
zan 
Este directorio es el que contiene todas las aplicaciones desarrolladas 
con el directorio ZanPHP. La carpeta "zan" es la más importante pues 
contiene el núcleo ZanPHP, en ella se encuentran los archivos de 
configuración del sitio para desarrollar, así como clases del framework 
importantes que apoyan la arquitectura misma, las traducciones, así
como todas las funciones (ayudantes) que el marco de trabajo (o 
framework) ofrece para hacer el trabajo pesado. 
Configuración 
ZanPHP requiere un poco de configuración para que funcione 
correctamente para ello, tiene que editar 2 archivos en / www / config, 
estos son: config.php y database.php. (debe renombrarlos quitando la 
extension: “.example”). 
Tenga en cuenta que la configuración se basa en constantes PHP, y de 
acuerdo con estos valores se establece como el funcionamiento del marco 
o framework. 
El primer archivo de configuración para analizar es: database.php, una 
vez que el archivo está abierto se puede ver que esta es la configuración 
necesaria para conectar con la base de datos para ser utilizados por el 
sitio. Este archivo nos permite modificar las constantes durante 2 áreas 
de trabajo, el trabajo local, o trabajar de forma remota. 
El segundo archivo de configuración, config.php tendrá todas las 
constantes para el funcionamiento de nuestro sitio, son constantes 
globales, señalando que existen algunas constantes importantes 
configuradas para el buen funcionamiento del sitio y el marco de 
trabajo, estos incluyen: 
domain: sirve para especificar el dominio que nuestro sitio tendrá. 
modRewrite: alterna la estilización de las URL (verdadero o falso). 
webURL: URL le permite configurar el sitio en general será útil para cargar 
imágenes, secuencias de comandos, etc.
Bases de datos 
Gracias a los patrones de diseño implementados por ZanPHP, puede 
utilizar más de una base de datos del conductor en las páginas web, 
esto significa que podemos trabajar en un sitio web bajo MySQL, SQL 
Server y PostgreSQL. 
Para ello, sólo es necesario, modificar el “DB_DRIVER” que es la 
constante situada en el archivo: /www/config/database.php. 
Aplicaciones 
Crear una aplicación con ZanPHP es muy fácil, sólo tiene que crear un 
directorio dentro de /applications, el directorio debe tener el nombre 
de la aplicación en minúsculas. Tenga en cuenta que el nombre del 
directorio que es el mismo con el que se va a acceder a la aplicación 
desde el sitio web. 
Otros aspectos a tener en cuenta, es que dentro del directorio de la 
aplicación 2 archivos deben ser obligatorios, así como un directorio, que 
son: /controllers/myapplication.php, /models/application.php y 
/views/myapplication.php. 
El contenido de estos archivos y el directorio se explicarán en los temas 
siguientes. 
Controladores 
Los controladores son muy importantes en ZanPHP ya que son 
indispensables para el uso de MVC. Es importante que cada aplicación 
deba tener un controlador, un modelo y una vista como minimo.
Sin embargo, en este apartado se analizará la estructura que un 
controlador debe tener para su correcto funcionamiento: 
class MyApplication_Controller extends ZP_Controller { 
public function __construct() { 
$this->Templates = $this->core("Templates"); 
$this->MyApplication_Model = $this->model("MyApplication_Model"); 
$this->helpers(); 
$this->application = $this->app("myapplication"); 
$this->Templates->theme(webTheme); 
} 
public function index() { 
print __("Hi, I'm MyApplication"); 
} 
} 
Esta es la estructura básica que cualquier controlador debe tener y 
cumplir para el correcto funcionamiento del marco. 
Vistas 
Las vistas son responsabilidad de mostrar o solicitar datos al usuario. El 
controlador es responsable de cargar la vista con los datos obtenidos por 
los modelos. Así es como funciona el patrón de diseño MVC. 
Las vistas deben ser nombrados de la siguiente manera: myview.php y 
debe ser ubicado en la carpeta /views de cada aplicación. 
Otro aspecto importante a mencionar sobre el directorio /views, es que 
puede ser creada dentro otra carpeta de /css, /js o /images, donde se 
pueden colocar hojas de estilo, scripts e imágenes que serán utilizadas 
únicamente por la aplicación. 
Modelos
Los modelos son una parte fundamental de una aplicación, ya que son 
los encargados de interactuar con la base de datos, el modelo, clasificar 
y organizar los datos. 
Al igual que los controladores, los modelos tienen una estructura básica 
que debe cumplirse para que funcione correctamente con ZanPHP: 
class MyApplication_Model extends ZP_Model { 
public function __construct() { 
$this->Db = $this->db(); 
$this->helpers(); 
$this->table = "mytable"; 
} 
} 
Traducciones 
ZanPHP soporta un sistema de traducciones fácil de usar, sólo tiene que 
utilizar una función y un archivo donde se colocan las traducciones. 
La función se usa como sigue: 
<? php print __("Parte del texto a traducir"); ?> 
Para completar el proceso de traducción, se debe añadir la traducción 
en el siguiente directorio /www/lib/languages/spanish.php por ejemplo, 
debe agregar la siguiente manera: 
function translation($text) { 
switch($text) { 
case "Some text to translate": return "Algún texto para 
traducir"; break; 
}r 
eturn $text; 
}
IMPLEMENTACIÓN. 
1er Paso. Descargar el ZanPHP del repositorio oficial de MilkZoft en Github. Descomprimirlo para 
utilizarlo y renombrar los archivos, quitando la extension “.example”.
2do Paso. Recordemos que para usarlo en local es necesario tener alguna de las herramientas de 
servidor en la maquina, como pueden ser WAMP, XAMPP, APPSERVER, etc. E inciar los servicios de 
Apache y MySql.
3er Paso. Como podemos ver ya funciona y le podemos modificar un poco para saber que es lo que 
ejecuta. En este caso al no haber configurado nada llama automaticamente a la aplicacion 
“default” y ejecuta su funcion “index()”. 
4to Paso. Ya hemos creado una nueva aplicacion con carpetas similares para adaptar al HMVC de 
ZanPHP. Ahora tenemos la aplicación “works” y sobre ella podemos trabajar para hacer algo más 
completo.
5to Paso. Hay que aclarar que los datos de la pagina anterior se obtienen de una base de datos 
como la siguiente. Y es el framework, atraves de php el que se encarga de obtener los campos y 
sus valores para que sean utiles en la aplicación.
6to Paso. Algo importante es que para utilizar una base de datos en ZanPHP deberemos 
configurarla en el archivo “www/config/database.php”, poner por ejemplo el Gestor de base de 
datos y su Driver o controlador, en el caso de MySQL es mysqli. El nombre del host, del usuario la 
contraseña de phpMyAdmin, el nombre de la base de datos, incluso la opcion de un prefijo de 
base de datos como sería “zan_” etc. 
7mo Paso. Las siguientes capturas son parte del codigo de la pagina web mostrada en imagenes 
anteriores. Se puede observar que el framework cuenta con funciones predeterminadas que se 
convierten en un estandar. Asi como variables igualmente ya definidas a lo largo de toda la 
aplicación. Dentro de sus funcionalidades esta el “paso de parámetros opcionales”, es decir se 
puede definir algun valor para cuando no se le envie ese valor. Notese que es la función “render()” 
la que en realidad crea la pagina en codigo html, ya con un estilo y con los datos de las variables.
8vo Paso. Tambien en el controlador se puede especificar parametros opcionales, pero sobre todo 
en esta parte -la funcion “all”- permite ver las funciones integradas dentro de la clase ‘Db’ del 
framework, que permiten la comunicación con MySQL , SQL Server, PostgreSQL o casi cualquier 
gestor de base de datos (ZanPHP aun no soporta todos). En su documentación se especifica cada 
función, pero en este ejemplo las derivaciones de find son similares a muchos tipos de SELECT - 
from - [where] en Bases de Datos, solo es necesario enviar el nombre de la tabla y un ID, una 
condición, un campo, etc. Ya no es necesario formular toda la consulta a no ser que se requiera 
como es el caso de findBySQL().
9no Paso. Algo que podria resultar curioso es como se estructura el html final de la pagina, el que 
hace que se vea, y es k no habiamos especificado las etiquetas <html> , <head> o <body> , pues 
bien, la view (ejemplo: applications/works/views/works.php) solo crea una parte que agrupa en un 
div con la clase “row”, esto para aplicarle algunos estilos con ayuda de Bootstrap, el framework de 
CSS que esta incorporado en ZanPHP. Incluso se pueden notar algunas clases que estan definidas 
para un estilo en Bootstrap como “span 4”. Ademas notese que en las primeras lineas 3 y 4, se usa 
la función de traduccion, que para el caso de que se especifique un idioma como es, en, ch, jp, ru, 
etc. en la URL, se traduzca automaticamente con apoyo de la libreria getText de PHP: __(“texto a 
traducir”);
Aqui la pagina cuando se ha seleccionado la opcion Development.
10mo Paso. Al ser php con lo que trabaja ZanPHP, permite la función die(var_dump()) que puede 
utilizarse como un depurador, a continuacion el ejemplo permite saber lo que regresa la variable 
$data despues de una consulta sql a nuestra base de datos. 
11er Paso. Y por ultimo, una funcionalidad más de este framework, la posibilidad de dividir en 
varios documentos html nuestra pagina web. Ya habiamos mencionado la vista, y que una 
aplicacion puede tener N vistas, pero ademas de las view, ZanPHP reconoce otros archivos con 
nombres estandar: header, footer, right, left.. y en caso de que existan los agrega automatico a
nuestra pagina html. Estos se encuentran en la carpeta themes, en este caso se utilizaron los 
mismos de la aplicación “default”. 
Cuando no tienen un nombre estandar como welcome, nuevo, mipagina, etc. Siempre pueden ser 
llamados con la función render(); 
Esto es algo de lo observado en el Framework creado por Carlos Zantana, por cierto mexicano. Y al 
parecer es una simple, sencilla y buena opcion al momento de crear sitios web.

Mais conteúdo relacionado

Mais procurados

Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLJosé Alfredo Ramírez
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajaxjuliocasal
 
Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework SymfonyRodrigo Miranda
 
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
Joomla! en 10 minutos  - JoomlaDay Sevilla 2015Joomla! en 10 minutos  - JoomlaDay Sevilla 2015
Joomla! en 10 minutos - JoomlaDay Sevilla 2015Carlos M. Cámara
 
MasterClass Desarrollo Plantillas Joomla!
MasterClass Desarrollo Plantillas Joomla!MasterClass Desarrollo Plantillas Joomla!
MasterClass Desarrollo Plantillas Joomla!SergioIglesiasNET
 
Frameworks para Php Adwa
Frameworks para Php AdwaFrameworks para Php Adwa
Frameworks para Php AdwaAndres Karp
 
#JoomlaIO - Desarrollo de Plantillas para Joomla!
#JoomlaIO - Desarrollo de Plantillas para Joomla!#JoomlaIO - Desarrollo de Plantillas para Joomla!
#JoomlaIO - Desarrollo de Plantillas para Joomla!SergioIglesiasNET
 
Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Rafael Franco
 
Servicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCServicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCVortexbird
 
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...SergioIglesiasNET
 
Desarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPDesarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPJavier López López
 
Kumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoKumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoDeivinson Tejeda
 
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 SpiritEstructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 SpiritDeivinson Tejeda
 

Mais procurados (20)

Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
 
Primefaces
PrimefacesPrimefaces
Primefaces
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
 
Facelets
FaceletsFacelets
Facelets
 
Kumbia php
Kumbia phpKumbia php
Kumbia php
 
Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework Symfony
 
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
Joomla! en 10 minutos  - JoomlaDay Sevilla 2015Joomla! en 10 minutos  - JoomlaDay Sevilla 2015
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
 
MasterClass Desarrollo Plantillas Joomla!
MasterClass Desarrollo Plantillas Joomla!MasterClass Desarrollo Plantillas Joomla!
MasterClass Desarrollo Plantillas Joomla!
 
Frameworks para Php Adwa
Frameworks para Php AdwaFrameworks para Php Adwa
Frameworks para Php Adwa
 
#JoomlaIO - Desarrollo de Plantillas para Joomla!
#JoomlaIO - Desarrollo de Plantillas para Joomla!#JoomlaIO - Desarrollo de Plantillas para Joomla!
#JoomlaIO - Desarrollo de Plantillas para Joomla!
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011
 
Servicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCServicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVC
 
Rails intro
Rails introRails intro
Rails intro
 
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
 
Desarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPDesarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHP
 
Semana 4 Estructura y componentes SPA
Semana 4  Estructura y componentes SPASemana 4  Estructura y componentes SPA
Semana 4 Estructura y componentes SPA
 
Kumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoKumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y Futuro
 
Manualcake
ManualcakeManualcake
Manualcake
 
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 SpiritEstructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
 

Semelhante a Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP ITTEHUACAN JUAN_FRANCISCO_JMZ

Semelhante a Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP ITTEHUACAN JUAN_FRANCISCO_JMZ (20)

Desarrollo Aplicaciones Zend Framework
Desarrollo Aplicaciones Zend FrameworkDesarrollo Aplicaciones Zend Framework
Desarrollo Aplicaciones Zend Framework
 
Taller de zan php
Taller de zan phpTaller de zan php
Taller de zan php
 
Laravel vc
Laravel vcLaravel vc
Laravel vc
 
Laravel
LaravelLaravel
Laravel
 
nn
nnnn
nn
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2
 
Zend Framework
Zend FrameworkZend Framework
Zend Framework
 
Zend framework
Zend frameworkZend framework
Zend framework
 
Introducción a Cake PHP Framework
Introducción a Cake PHP FrameworkIntroducción a Cake PHP Framework
Introducción a Cake PHP Framework
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Faces
 
Framework
FrameworkFramework
Framework
 
Phpmyadmin
PhpmyadminPhpmyadmin
Phpmyadmin
 
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
 
Framework kahana
Framework kahanaFramework kahana
Framework kahana
 
CMS - Joomla
CMS - JoomlaCMS - Joomla
CMS - Joomla
 
Gestionar mis proyectos con ayuda de CodeIgniter
Gestionar mis proyectos con ayuda de CodeIgniterGestionar mis proyectos con ayuda de CodeIgniter
Gestionar mis proyectos con ayuda de CodeIgniter
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.
 
Dreamweaver
DreamweaverDreamweaver
Dreamweaver
 
Documento Web2Py
Documento Web2PyDocumento Web2Py
Documento Web2Py
 
Presentación1
Presentación1Presentación1
Presentación1
 

Último

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresJonathanCovena1
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 

Último (20)

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 

Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP ITTEHUACAN JUAN_FRANCISCO_JMZ

  • 1. INSTITUTO TECNOLOGICO DE TEHUACAN INGENIERIA EN SISTEMAS COMPUTACIONALES PROGRAMACIÓN WEB - ZanPHP - FRAMEWORK EQUIPO: Zan PHP -- by MilkZoft - JUAN FRANCISCO JIMENEZ JIMENEZ - EDMUNDO EMMANUEL MONTALVO VALDIVIA
  • 2. INTRODUCCIÓN. ZanPHP es un framework de desarrollo ágil de aplicaciones Web escrito en PHP5 que utiliza diferentes patrones de diseño y las mejores prácticas para crear aplicaciones más rápidamente con buena calidad del código. Algunas de las ventajas de ZanPHP son: Fácil de instalar y configurar Fácil de aprender Usted puede crear casi cualquier tipo de aplicaciones web Compatible con diferentes plataformas Orientado a objetos Utiliza muchos patrones de diseño y las mejores prácticas para producir código de mayor calidad Aplicaciones escalables y fáciles de mantener Documentación en Inglés y Español Integración con jQuery y jQuery Mobile, Ajax y otras nuevas tecnologías Es software libre Requisitos del servidor PHP 5.1.x o superior Bases de datos soportadas: MySQL, MySQLi, MsSQL, Oracle, PostgreSQL y SQLite Créditos ZanPHP fue desarrollado por Carlos Santana (CEO de MilkZoft). ZanPHP fue desarrollado en 2009, pero fue hasta julio de 2011 que se llevó a la decisión de liberarlo como software libre. Actualmente el desarrollo de ZanPHP es mantenido por el equipo de desarrollo y colaboradores de la comunidad MilkZoft. Cuenta con la implementación de las mejores prácticas para desarrollar aplicaciones más rápido y con mayor calidad.
  • 3. INSTALACIÓN. Para empezar a trabajar con ZanPHP, el primer paso necesario es para descargarlo. Conseguir ZanPHP es fácil, sólo tiene que descargar el .zip de: https://github.com/MilkZoft/ZanPHP o clone con git ejecutando el comando: git clone git@github.com:MilkZoft/ZanPHP.git El siguiente paso es establecer las constantes de 2 archivos de configuración. Estos archivos se encuentran en: / www / config El primer archivo a modificar es el /www/config/config.example.php usted debería cambiar o verificar que las siguientes constantes tengan un valor correcto: [“domain”]: sirve para especificar el dominio que nuestro sitio tendrá. [“modRewrite”]: alterna la estilización de las URL (verdadero o falso). [“webURL”]: URL le permite configurar el sitio en general será útil para cargar imágenes, secuencias de comandos, etc. [“defaultApplication”]: permite configurar la aplicación web por defecto [“webSituation”]: alterna el acceso al sitio web (activo o inactivo) [“webLanguage”]: configurar el idioma predeterminado del sitio web El segundo archivo para configurar es /www/config/ database.example.php con los valores correctos para las siguientes constantes: “DB_DRIVER”: nos permite especificar el controlador de base de datos a utilizar. “DB_HOST”: nos permite configurar el host donde el servidor de base de datos (normalmente localhost). “DB_USER”: el usuario se conecte a la base de datos. “DB_PWD”: contraseña para conectarse a la base de datos.
  • 4. “DB_DATABASE”: el nombre de la base de datos a la que se conectará. “DB_PORT”: puerto base de datos. “DB_PREFIX”: el prefijo nuestras mesas tienen. Una vez que estos pasos, tenemos ZanPHP listo para trabajar, sólo es cuestión de empezar a crear aplicaciones. Modelo Vista Controlador ZanPHP implementa uno de los patrones de diseño utilizados en la actualidad por la mayoría de los FRAMEWORKS de desarrollo web. Este modelo, denominado MVC (Modelo Vista Controlador), implementado como HMVC en ZanPHP, significa que, básicamente, el desarrollo se divide en 3 partes principales: un modelo, una visión y un controlador, solo que el equipo de milkzoft le ha agregado una caracteristica de jerarquia que permite tener varios modelos, varias vistas y varios controladores simultáneos para una sola aplicación. A continuación se explica cada concepto en el MVC. Modelo Esta clase contendrá todas las funciones encomendadas a interactuar con la estrategia de negocio de nuestra aplicación y por lo tanto el tratamiento de los datos, en términos más técnicos, llevará a cabo todos los tratamientos en nuestro identificador de datos de aplicaciones (consultas, inserciones, actualizaciones y borrados). En sí, se refiere no solo a bases de datos, sino a Web Services o documentos de diversos tipos que puedan contener datos o resultados de consultas, y que representen informacion relevante para nuestra aplicación. Vista Las vistas son responsables de la visualización de datos para el usuario, pero también pueden ser utilizadas para solicitar datos, por supuesto,
  • 5. esto de acuerdo a lo que se especifique. En el MVC aplicado al desarrollo web puede ser descrito como el encargado de mostrar datos HTML incluyendo su correspondiente estilo en CSS o Javascript. Controlador Esta clase es el administrador del flujo de la aplicación, es la encargada de recibir solicitudes de los usuarios, identificar, procesar, enviar, llamar a los métodos del modelo y devolver datos al usuario a través de una vista. En ZanPHP el MVC se aplica dentro de cada aplicación, debe crear dos archivos en la carpeta de la aplicación: controller.application.php model.application.php y también los archivos de vistas deben estar dentro de la carpeta "vistas" de cada aplicación y ser nombradas utilizando la siguiente convención: view.myview.php. Archivos Estructura www Este directorio es el que contiene todas las aplicaciones desarrolladas con ZanPHP, además de incluir archivos de la biblioteca, hay diferentes tipos de archivos, entre los que destacan: las hojas de estilo, bibliotecas externas, plantillas, imágenes y los archivos de cada aplicación. zan Este directorio es el que contiene todas las aplicaciones desarrolladas con el directorio ZanPHP. La carpeta "zan" es la más importante pues contiene el núcleo ZanPHP, en ella se encuentran los archivos de configuración del sitio para desarrollar, así como clases del framework importantes que apoyan la arquitectura misma, las traducciones, así
  • 6. como todas las funciones (ayudantes) que el marco de trabajo (o framework) ofrece para hacer el trabajo pesado. Configuración ZanPHP requiere un poco de configuración para que funcione correctamente para ello, tiene que editar 2 archivos en / www / config, estos son: config.php y database.php. (debe renombrarlos quitando la extension: “.example”). Tenga en cuenta que la configuración se basa en constantes PHP, y de acuerdo con estos valores se establece como el funcionamiento del marco o framework. El primer archivo de configuración para analizar es: database.php, una vez que el archivo está abierto se puede ver que esta es la configuración necesaria para conectar con la base de datos para ser utilizados por el sitio. Este archivo nos permite modificar las constantes durante 2 áreas de trabajo, el trabajo local, o trabajar de forma remota. El segundo archivo de configuración, config.php tendrá todas las constantes para el funcionamiento de nuestro sitio, son constantes globales, señalando que existen algunas constantes importantes configuradas para el buen funcionamiento del sitio y el marco de trabajo, estos incluyen: domain: sirve para especificar el dominio que nuestro sitio tendrá. modRewrite: alterna la estilización de las URL (verdadero o falso). webURL: URL le permite configurar el sitio en general será útil para cargar imágenes, secuencias de comandos, etc.
  • 7. Bases de datos Gracias a los patrones de diseño implementados por ZanPHP, puede utilizar más de una base de datos del conductor en las páginas web, esto significa que podemos trabajar en un sitio web bajo MySQL, SQL Server y PostgreSQL. Para ello, sólo es necesario, modificar el “DB_DRIVER” que es la constante situada en el archivo: /www/config/database.php. Aplicaciones Crear una aplicación con ZanPHP es muy fácil, sólo tiene que crear un directorio dentro de /applications, el directorio debe tener el nombre de la aplicación en minúsculas. Tenga en cuenta que el nombre del directorio que es el mismo con el que se va a acceder a la aplicación desde el sitio web. Otros aspectos a tener en cuenta, es que dentro del directorio de la aplicación 2 archivos deben ser obligatorios, así como un directorio, que son: /controllers/myapplication.php, /models/application.php y /views/myapplication.php. El contenido de estos archivos y el directorio se explicarán en los temas siguientes. Controladores Los controladores son muy importantes en ZanPHP ya que son indispensables para el uso de MVC. Es importante que cada aplicación deba tener un controlador, un modelo y una vista como minimo.
  • 8. Sin embargo, en este apartado se analizará la estructura que un controlador debe tener para su correcto funcionamiento: class MyApplication_Controller extends ZP_Controller { public function __construct() { $this->Templates = $this->core("Templates"); $this->MyApplication_Model = $this->model("MyApplication_Model"); $this->helpers(); $this->application = $this->app("myapplication"); $this->Templates->theme(webTheme); } public function index() { print __("Hi, I'm MyApplication"); } } Esta es la estructura básica que cualquier controlador debe tener y cumplir para el correcto funcionamiento del marco. Vistas Las vistas son responsabilidad de mostrar o solicitar datos al usuario. El controlador es responsable de cargar la vista con los datos obtenidos por los modelos. Así es como funciona el patrón de diseño MVC. Las vistas deben ser nombrados de la siguiente manera: myview.php y debe ser ubicado en la carpeta /views de cada aplicación. Otro aspecto importante a mencionar sobre el directorio /views, es que puede ser creada dentro otra carpeta de /css, /js o /images, donde se pueden colocar hojas de estilo, scripts e imágenes que serán utilizadas únicamente por la aplicación. Modelos
  • 9. Los modelos son una parte fundamental de una aplicación, ya que son los encargados de interactuar con la base de datos, el modelo, clasificar y organizar los datos. Al igual que los controladores, los modelos tienen una estructura básica que debe cumplirse para que funcione correctamente con ZanPHP: class MyApplication_Model extends ZP_Model { public function __construct() { $this->Db = $this->db(); $this->helpers(); $this->table = "mytable"; } } Traducciones ZanPHP soporta un sistema de traducciones fácil de usar, sólo tiene que utilizar una función y un archivo donde se colocan las traducciones. La función se usa como sigue: <? php print __("Parte del texto a traducir"); ?> Para completar el proceso de traducción, se debe añadir la traducción en el siguiente directorio /www/lib/languages/spanish.php por ejemplo, debe agregar la siguiente manera: function translation($text) { switch($text) { case "Some text to translate": return "Algún texto para traducir"; break; }r eturn $text; }
  • 10. IMPLEMENTACIÓN. 1er Paso. Descargar el ZanPHP del repositorio oficial de MilkZoft en Github. Descomprimirlo para utilizarlo y renombrar los archivos, quitando la extension “.example”.
  • 11. 2do Paso. Recordemos que para usarlo en local es necesario tener alguna de las herramientas de servidor en la maquina, como pueden ser WAMP, XAMPP, APPSERVER, etc. E inciar los servicios de Apache y MySql.
  • 12. 3er Paso. Como podemos ver ya funciona y le podemos modificar un poco para saber que es lo que ejecuta. En este caso al no haber configurado nada llama automaticamente a la aplicacion “default” y ejecuta su funcion “index()”. 4to Paso. Ya hemos creado una nueva aplicacion con carpetas similares para adaptar al HMVC de ZanPHP. Ahora tenemos la aplicación “works” y sobre ella podemos trabajar para hacer algo más completo.
  • 13. 5to Paso. Hay que aclarar que los datos de la pagina anterior se obtienen de una base de datos como la siguiente. Y es el framework, atraves de php el que se encarga de obtener los campos y sus valores para que sean utiles en la aplicación.
  • 14. 6to Paso. Algo importante es que para utilizar una base de datos en ZanPHP deberemos configurarla en el archivo “www/config/database.php”, poner por ejemplo el Gestor de base de datos y su Driver o controlador, en el caso de MySQL es mysqli. El nombre del host, del usuario la contraseña de phpMyAdmin, el nombre de la base de datos, incluso la opcion de un prefijo de base de datos como sería “zan_” etc. 7mo Paso. Las siguientes capturas son parte del codigo de la pagina web mostrada en imagenes anteriores. Se puede observar que el framework cuenta con funciones predeterminadas que se convierten en un estandar. Asi como variables igualmente ya definidas a lo largo de toda la aplicación. Dentro de sus funcionalidades esta el “paso de parámetros opcionales”, es decir se puede definir algun valor para cuando no se le envie ese valor. Notese que es la función “render()” la que en realidad crea la pagina en codigo html, ya con un estilo y con los datos de las variables.
  • 15. 8vo Paso. Tambien en el controlador se puede especificar parametros opcionales, pero sobre todo en esta parte -la funcion “all”- permite ver las funciones integradas dentro de la clase ‘Db’ del framework, que permiten la comunicación con MySQL , SQL Server, PostgreSQL o casi cualquier gestor de base de datos (ZanPHP aun no soporta todos). En su documentación se especifica cada función, pero en este ejemplo las derivaciones de find son similares a muchos tipos de SELECT - from - [where] en Bases de Datos, solo es necesario enviar el nombre de la tabla y un ID, una condición, un campo, etc. Ya no es necesario formular toda la consulta a no ser que se requiera como es el caso de findBySQL().
  • 16. 9no Paso. Algo que podria resultar curioso es como se estructura el html final de la pagina, el que hace que se vea, y es k no habiamos especificado las etiquetas <html> , <head> o <body> , pues bien, la view (ejemplo: applications/works/views/works.php) solo crea una parte que agrupa en un div con la clase “row”, esto para aplicarle algunos estilos con ayuda de Bootstrap, el framework de CSS que esta incorporado en ZanPHP. Incluso se pueden notar algunas clases que estan definidas para un estilo en Bootstrap como “span 4”. Ademas notese que en las primeras lineas 3 y 4, se usa la función de traduccion, que para el caso de que se especifique un idioma como es, en, ch, jp, ru, etc. en la URL, se traduzca automaticamente con apoyo de la libreria getText de PHP: __(“texto a traducir”);
  • 17. Aqui la pagina cuando se ha seleccionado la opcion Development.
  • 18. 10mo Paso. Al ser php con lo que trabaja ZanPHP, permite la función die(var_dump()) que puede utilizarse como un depurador, a continuacion el ejemplo permite saber lo que regresa la variable $data despues de una consulta sql a nuestra base de datos. 11er Paso. Y por ultimo, una funcionalidad más de este framework, la posibilidad de dividir en varios documentos html nuestra pagina web. Ya habiamos mencionado la vista, y que una aplicacion puede tener N vistas, pero ademas de las view, ZanPHP reconoce otros archivos con nombres estandar: header, footer, right, left.. y en caso de que existan los agrega automatico a
  • 19. nuestra pagina html. Estos se encuentran en la carpeta themes, en este caso se utilizaron los mismos de la aplicación “default”. Cuando no tienen un nombre estandar como welcome, nuevo, mipagina, etc. Siempre pueden ser llamados con la función render(); Esto es algo de lo observado en el Framework creado por Carlos Zantana, por cierto mexicano. Y al parecer es una simple, sencilla y buena opcion al momento de crear sitios web.