loduis/pto
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
------------------------------------------
PTO: PHP TEMPLATE OBJECT
------------------------------------------
Yo Queria tener un sistema de plantilla tan bueno como smarty, tan liviano como
Savant y que hiciera un buen manejo de la cache como drupal (304 status). Que
pudiera guardar el contenido de la cache minificado y comprimido para disminuir
el I/0 y que pudiera enviar el contenido comprimido al cliente para disminuir
la carga de la red y el trabajo hecho por el servidor cuando se aplican filtros
como: AddOutputFilterByType DEFLATE text/html text/xml.
Que ademas pudiera guardar parte de los archivos compilados para ser utilizados
como nuevos archivos php a ejecutar.
1. Las plantillas dinamicas son archivos cuya extension .tpl.php
2. Se permiten plantillas cuya extension es .tpl el cual se interpreta como
archivo estaticos
3. Si se configura un directorio para guardar la cache las plantillas son
automicamente guardadas con la extesion .tpl, un .tpl.php es guardado
si la plantilla contiene tag <nocache></nocache>
4. El sistema de plantilla esta en la forma base que consume la menor cantidad de
recursos posible, si usted quiere mas herede la clase
5. Una plantilla padre no puede renderizar una plantilla hija dentro de un tag nocache si esta tiene
a su vez tag nocache ejemplo:
<nocache><?php $this->test->render('template'); ?></nocache>
6. Los validadores etag se utilizan en archivos que cambian constantemente
Cuando se usa etag se guardan dos archivos un .tpl con la version cacheada,
necesario para responder con un Status: 304, y un .tpl.php con la version
minificada del codigo fuente
7.
------------------------------------------
RECURSOS
------------------------------------------
1. Revisar documento para cachear contenido:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.1
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4
http://www.w3.org/Protocols/rfc2616/rfc2616-sec1.html
http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
http://www.mnot.net/cache_docs/
http://www.jonasjohn.de/snippets/php/caching.htm
http://www.mnot.net/blog/2005/11/26/caching
http://www.xml.com/pub/a/2006/02/01/doing-http-caching-right-introducing-httplib2.html?page=1
http://www.mnot.net/blog/2007/08/07/etags
2. DRUPAL: include/bootstrap.inc drupal_serve_page_from_cache
3. Smarty
http://www.smarty.net/
4. Savant
http://phpsavant.com/