Edición de «KumbiaPHP Framework Versión 1.0 Spirit»
De KumbiaPHP Framework Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Introducción == | == Introducción == | ||
En la [https://launchpad.net/kumbia/1.0 versión 1.0](<s>antigua 0.5.1</s>) el enfoque primordial que ha considerado el [[Team_Development_KumbiaPHP_Framework|Equipo de Desarrollo]] gira en torno al rendimiento del framework a nivel de velocidad y mantenibilidad del framework en este sentido hemos desacoplado el core de kumbiaphp framework en una nueva estructura obteniendo grandes resultados, de manera que las pruebas en base a esta versión nos indica que vamos en buen camino y ademas es bastante rápida con los cambios aplicados siempre con las mejores practicas de desarrollo. | En la [https://launchpad.net/kumbia/1.0 versión 1.0](<s>antigua 0.5.1</s>) el enfoque primordial que ha considerado el [[Team_Development_KumbiaPHP_Framework|Equipo de Desarrollo]] gira en torno al rendimiento del framework a nivel de velocidad y mantenibilidad del framework en este sentido hemos desacoplado el core de kumbiaphp framework en una nueva estructura obteniendo grandes resultados, de manera que las pruebas en base a esta versión nos indica que vamos en buen camino y ademas es bastante rápida con los cambios aplicados siempre con las mejores practicas de desarrollo. | ||
Línea 58: | Línea 52: | ||
== Constante en KumbiaPHP== | == Constante en KumbiaPHP== | ||
− | En la version 1.0 Spirit, se ha creado tres constantes cada cual cumple un objetivo especifico con el fin de brindar mayor flexibilidad al momento de | + | En la version 1.0 Spirit, se ha creado tres constantes cada cual cumple un objetivo especifico con el fin de brindar mayor flexibilidad al momento de maneras rutas (paths) en el framework. |
=== APP_PATH === | === APP_PATH === | ||
Línea 84: | Línea 78: | ||
</pre> | </pre> | ||
− | Para incluir archivos que se encuentre bajo este arbol de directorio es el mismo | + | Para incluir archivos que se encuentre bajo este arbol de directorio es el mismo precidimiento que se explico para la constante APP_PATH |
'''NOTA: El core de KumbiaPHP en la version 1.0 esta totalmente desacoplado del directorio de la aplicación. [[KumbiaPHP_Framework_Versión_1.0_Spirit#Ventajas_de_esta_nueva_estructura_de_directorios|Ventajas de la Estructura de directorio]]''' | '''NOTA: El core de KumbiaPHP en la version 1.0 esta totalmente desacoplado del directorio de la aplicación. [[KumbiaPHP_Framework_Versión_1.0_Spirit#Ventajas_de_esta_nueva_estructura_de_directorios|Ventajas de la Estructura de directorio]]''' | ||
− | === | + | === URL_PATH === |
− | Constante que contiene la URL para el navegador (browser) y apunta a '''app/public/''' para enlazar imágenes, CSS, | + | Constante que contiene la URL para el navegador (browser) y apunta a '''app/public/''' para enlazar imágenes, CSS, JavaScritp y todo lo que sea ruta para browser. |
Ejemplo: | Ejemplo: | ||
<pre> | <pre> | ||
//Genera un link que ira al controller: controller y action: action | //Genera un link que ira al controller: controller y action: action | ||
− | <a href="<?php echo | + | <a href="<?php echo URL_PATH ?>controller/action/" title="Mi Link">Mi Link</a> |
//Enlaza una imagen que esta en public/img/imagen.jpg | //Enlaza una imagen que esta en public/img/imagen.jpg | ||
− | <img src="<?php echo | + | <img src="<?php echo URL_PATH ?>img/imagen.jpg" alt="Una Imagen" /> |
//Enlaza el archivo CSS en public/css/style.css | //Enlaza el archivo CSS en public/css/style.css | ||
− | <link rel="stylesheet" type="text/css" href="<?php echo | + | <link rel="stylesheet" type="text/css" href="<?php echo URL_PATH ?>css/style.css"/> |
</pre> | </pre> | ||
Línea 245: | Línea 239: | ||
*'''production''' Indica si se encuentra en producción. | *'''production''' Indica si se encuentra en producción. | ||
*'''cache_driver''' driver que se utilizara para el manejo de cache. KumbiaPHP cuenta con tres (3) driver: file, sqlite y memsqlite. | *'''cache_driver''' driver que se utilizara para el manejo de cache. KumbiaPHP cuenta con tres (3) driver: file, sqlite y memsqlite. | ||
− | *'''locale''' | + | *'''locale''' Localicazión |
− | |||
<pre>;; Configuracion de Aplicacion | <pre>;; Configuracion de Aplicacion | ||
Línea 262: | Línea 255: | ||
; cache_driver: driver para la cache (file, sqlite, memsqlite) | ; cache_driver: driver para la cache (file, sqlite, memsqlite) | ||
; metadata_lifetime: Tiempo de vida de la metadata cacheada | ; metadata_lifetime: Tiempo de vida de la metadata cacheada | ||
− | ; locale: | + | ; locale: Localicazion |
− | |||
Línea 283: | Línea 275: | ||
;metadata_lifetime = "+1 year" | ;metadata_lifetime = "+1 year" | ||
;locale = es_ES | ;locale = es_ES | ||
− | |||
</pre> | </pre> | ||
Línea 311: | Línea 302: | ||
host = localhost | host = localhost | ||
username = root | username = root | ||
− | password = | + | password = |
− | name = | + | name = innogest |
type = mysql | type = mysql | ||
Línea 318: | Línea 309: | ||
host = localhost | host = localhost | ||
username = root | username = root | ||
− | password = | + | password = |
name = test | name = test | ||
− | type = | + | type = mysql |
[test] | [test] | ||
host = localhost | host = localhost | ||
username = root | username = root | ||
− | password = | + | password = |
name = test | name = test | ||
− | type = | + | type = mysql |
</pre> | </pre> | ||
== boot.ini == | == boot.ini == | ||
− | En este archivo | + | En este archivo es donde el usuario carga las extensiones (librerías) que trae el framework o bien alguna que deseen agregar. |
− | + | ||
+ | Extensiones Propias de Kumbiaphp Framework | ||
+ | *session | ||
+ | *logger | ||
+ | *auth | ||
+ | *date | ||
+ | *filter | ||
+ | *acl | ||
+ | *benchmark | ||
+ | *security | ||
+ | |||
+ | Extensiones externas al framework | ||
+ | *excel | ||
+ | *fpdf | ||
+ | *phpmailer | ||
+ | *libchart | ||
+ | |||
+ | <pre> | ||
+ | ; LIBRERIAS DISPONIBLES | ||
+ | ; Librerias Propias de KumbiaPHP Framework (libraries) | ||
+ | ; * session | ||
+ | ; * logger | ||
+ | ; * auth | ||
+ | ; * date | ||
+ | ; * filter | ||
+ | ; * acl | ||
+ | ; * benchmark | ||
+ | ; * security | ||
+ | ; | ||
+ | ; Cargadores en libraries para librerias de terceros (vendors) | ||
+ | ; * excel | ||
+ | ; * fpdf | ||
+ | ; * phpmailer | ||
+ | ; * libchart | ||
+ | |||
+ | |||
+ | [modules] | ||
+ | libs = logger | ||
+ | </pre> | ||
+ | |||
+ | Es decir, se usa libs= en vez de extensions= | ||
+ | Y también se quita el prefijo kumbia. | ||
+ | |||
+ | '''KumbiaPHP 0.5''' | ||
+ | <pre> | ||
+ | [modules] | ||
+ | extensions = kumbia.logger, kumbia.auth | ||
+ | </pre> | ||
+ | '''KumbiaPHP 1.0''' | ||
+ | <pre> | ||
+ | [modules] | ||
+ | libs = logger, auth | ||
+ | </pre> | ||
== Router == | == Router == | ||
Línea 512: | Línea 555: | ||
echo $code; | echo $code; | ||
+ | } | ||
} | } | ||
</source> | </source> | ||
Línea 728: | Línea 772: | ||
string '''$group''': grupo al cual pertenece el elemento cacheado (por defecto "default") | string '''$group''': grupo al cual pertenece el elemento cacheado (por defecto "default") | ||
− | < | + | <pre> |
$data = Cache::driver()->get('data'); | $data = Cache::driver()->get('data'); | ||
− | </ | + | </pre> |
===save($value, $lifetime=null, $id=false, $group='default')=== | ===save($value, $lifetime=null, $id=false, $group='default')=== | ||
Línea 1005: | Línea 1049: | ||
===Production=== | ===Production=== | ||
− | Indicando en el config.ini '''"production = On"''', se entra en el modo de producción, en este la cache de kumbiaphp framework esta activada y se cachea información necesaria para agilizar la carga de la aplicación tal como la metadata de la base datos (información de tablas y campos), asimismo las vistas que el usuario desee cachear. | + | Indicando en el config.ini '''"production = On"''', se entra en el modo de producción, en este la cache de kumbiaphp framework esta activada y se cachea información necesaria para agilizar la carga de la aplicación tal como la metadata de la base datos (información de tablas y campos), asimismo las vistas que el usuario desee cachear. |
===Development=== | ===Development=== | ||
Línea 1375: | Línea 1419: | ||
</source> | </source> | ||
− | Los filtros de usuario deben ubicarse en el directorio "app | + | Los filtros de usuario deben ubicarse en el directorio "app/filters". |
Por convenio la clase que corresponde al filtro debe llevar el sufijo "Filter" y el archivo debe llamarse igual que la clase pero en notación smallcase. | Por convenio la clase que corresponde al filtro debe llevar el sufijo "Filter" y el archivo debe llamarse igual que la clase pero en notación smallcase. | ||
Línea 1447: | Línea 1491: | ||
//Se carga core/libs/auth/auth.php, siempre que no exista algún archivo | //Se carga core/libs/auth/auth.php, siempre que no exista algún archivo | ||
//con el mismo nombre en app/libs/ ya que KumbiaPHP da prioridad a tu app sobre el core. | //con el mismo nombre en app/libs/ ya que KumbiaPHP da prioridad a tu app sobre el core. | ||
− | Load::lib(' | + | Load::lib('Auth'); |
} | } | ||
} | } | ||
Línea 1501: | Línea 1545: | ||
</source> | </source> | ||
− | === | + | ===unset_data($index, $namespace='default')=== |
Elimina el valor para un indice de la sesión actual. | Elimina el valor para un indice de la sesión actual. | ||
<source lang=php> | <source lang=php> | ||
− | Session:: | + | Session::unset_data('usuario'); |
</source> | </source> | ||
− | === | + | ===isset_data($index, $namespace='default')=== |
Verifica que este definido el indice en la sesión actual. | Verifica que este definido el indice en la sesión actual. | ||
<source lang=php> | <source lang=php> | ||
− | Session:: | + | Session::isset_data('id_usuario');//retorna false. |
</source> | </source> | ||
NOTA: '''$namespace''' es un espacio individual en el cual se pueden contener las variables de sesión, permitiendo evitar colisiones con nombres de variables. | NOTA: '''$namespace''' es un espacio individual en el cual se pueden contener las variables de sesión, permitiendo evitar colisiones con nombres de variables. | ||
+ | |||
==Upload== | ==Upload== |