![]() |
DOMbasic
1.0
DOMBasic es un Framework PHP para la creación de elementos DOM que generan contenido HTML dinámico y permite su modificación 'al vuelo' (Websites). Está escrito entéramente en PHP y sigue el paradigma POO.
|
Métodos públicos | |
__construct ($key=null) | |
__clone () | |
__unset ($child) | |
__toString () | |
reinicializar () | |
setReadOnly ($readOnly) | |
getReadOnly () | |
setKey (string $key=null) | |
getKey () | |
getTag () | |
setTag ($tag) | |
getOpenTag () | |
getCloseTag () | |
getType () | |
getDesc () | |
clearText () | |
setText ($text) | |
addText ($text) | |
getTextAll ($filter=false) | |
getText ($filter=false) | |
addChild (DOM_element $child=null) | |
addChildren (array $children=null) | |
setChildren (array $children=null) | |
getChildren () | |
getChildrenAll () | |
getChildByKey ($key, $grandchildren=true) | |
getChildrenByTag ($tag, $grandchildren=true) | |
getChildrenByType ($type, $grandchildren=true) | |
removeChild ($child, $grandchildren=true) | |
removeChildrenAll () | |
removeChildByKey ($key, $grandchildren=true) | |
removeChildrenByTag ($tag, $grandchildren=true) | |
removeChildrenByType ($type, $grandchildren=true) | |
equals ($objDOM) | |
equalsType ($objDOM) | |
toHTML () | |
toJSON ($return=true, $base64values=true) | |
fromJSON ($json) | |
fromDOM_element (DOM_element $dom) | |
attribsToURL ($encode=self::ENCODE_RFC_1738) | |
attribsFromURL ($strURL) | |
getConfiguration () | |
setConfiguration (array $conf) | |
importConfINI ($confFile=null) | |
![]() | |
__construct ($asocArrayAttribs=null) | |
setReadOnly ($readOnly) | |
getReadOnly () | |
reinicializar () | |
__get ($attrib) | |
__set ($attrib, $value) | |
__isset ($attrib) | |
__unset ($attrib) | |
offsetExists ($attrib) | |
offsetGet ($attrib) | |
offsetSet ($attrib, $value) | |
offsetUnset ($attrib) | |
getIterator () | |
setAttribs ($asocArrayAttribs) | |
getAttribs () | |
getAttribsStr () | |
addAttrib ($attrib, $valorAttrib) | |
addAttribs ($arrayAttribs) | |
removeAttrib ($attrib) | |
removeAttribs ($arrayAttribs) | |
clearAttribs () | |
countAttrs () | |
equals ($objAttribs) | |
__toString () | |
toJSON ($return=true, $base64values=true) | |
fromJSON ($arrJSON) | |
setEjemplo () | |
Métodos públicos estáticos | |
static | getInstance () |
static | getDTD (int $dtd) |
static | objJSON2DOM_element ($objectJSON, $return=true, $base64values=true) |
![]() | |
static | arrayFromURL ($strURLquery) |
static | filtrarStrJSON ($str="") |
static | writeLog ($mensaje, $trace) |
Campos de datos | |
const | N_C = __CLASS__ |
const | PATRON_SINGLETON =true |
const | AVISO_SINGLETON =true |
![]() | |
const | N_C = __CLASS__ |
const | ENCODE_RFC_1738 ="RFC_1738" |
const | ENCODE_RFC_3986 ="RFC_3986" |
Métodos protegidos | |
tryingWrite ($arg="") | |
![]() | |
tryingWrite ($arg="") | |
toURL ($encode=self::ENCODE_RFC_3986) | |
fromURL ($strURLquery) | |
Atributos protegidos | |
$_READ_ONLY =false | |
$TAG = "" | |
$TYPE = "container" | |
$DESC = "DOM's container element" | |
$OPEN_TAG_LEFT ="<" | |
$OPEN_TAG_RIGHT =">" | |
$CLOSE_TAG_LEFT ="</" | |
$CLOSE_TAG_RIGHT =">" | |
$AVISO_GET =false | |
$_key ="" | |
$_text ="" | |
$_children =array() | |
![]() | |
$_READ_ONLY =false | |
$AVISO_GET =false | |
$_attribs =array() | |
Clase padre para crear cualquier elemento del DOM. Admite CONCATENACION DE METODOS mediante el retorno de la construccion '$this' en todos los metodos 'NO-GETTER': … $this->setText('text')->removeChild($child)->importConfINI();
…
__unset | ( | $child | ) |
DOMBasicElementReadOnlyException | If 'Read Only' ON. |
DOMBasicElementNotFoundException | If $attrib is not a key in the $_attribs array. |
DOM_element | $child | The element to unset. |
addChild | ( | DOM_element | $child = null | ) |
Metodo para agregar un hijo al elemento DOM.
$child | Elemento DOM. |
Implementa DOM_Interface.
addChildren | ( | array | $children = null | ) |
Metodo para agregar un array de hijos de elementos DOM, al ya existente.
$child | Elemento DOM. |
Implementa DOM_Interface.
attribsFromURL | ( | $strURL | ) |
Establece y retorna un array de atributos con sus correspondientes valores extraidos de una cadena con el formato de las URL's, para construir Atributos de este Objeto.
El parametro es la cadena desde la que se extraeran los atributos y sus valores, esta cadena tendra el formato entregado en las URL's como parte de su 'queryString' (entre '?' y '#'), Igual a la generada por el metodo toURL().
$encode | Cadena indicando el tipo de codificacion (alguna de las dos constantes indicadas RFC_1738 o RFC_3986). |
attribsToURL | ( | $encode = self::ENCODE_RFC_1738 | ) |
Retorna una cadena con el formato de las URL's, construida con los Atributos de este Objeto.
Contiene un parametro $encode indicando el tipo de codificacion a aplicar: 'RFC_1738' (espacios=+) o 'RFC_3986' (espacions=%20), las cuales estan implementadas como cadenas staticas de la clase DOM_attribs.
$encode | Cadena indicando el tipo de codificacion (alguna de las dos constantes indicadas RFC_1738 o RFC_3986). |
equals | ( | $objDOM | ) |
Compara si otro objeto es igual (comparable no clonable) a este (no si es el mismo); para esto se tienen que cumplir las siguientes normas:
DOM_element | $objDOM | Algun objeto instancia de esta Clase |
equalsType | ( | $objDOM | ) |
Compara si otro objeto es del mismo TIPO que este (no si es el mismo)
DOM_element | $objDOM | Algun objeto instancia de esta Clase |
Implementa DOM_Interface.
fromDOM_element | ( | DOM_element | $dom | ) |
Metodo para reconstruir este objeto a la imagen y semejanza del objeto DOM_element entregado, con hijos, atributos, y caracteristicas propias.
DOM_element | $dom | Un objeto de esta clase. |
fromJSON | ( | $json | ) |
Metodo para reconstruir este objeto a la imagen y semejanza de la cadena JSON entregada que deberia representar otro DOM_element con hijos, atributos, y caracteristicas propias.
Detecta AUTOMATICAMENTE si el objeto se codifico con 'base64'.
UTILIZA LA FUNCION PHP 'json_decode()' con parametros por defecto.
string | $json | La cadena json que representa un objeto DOM_element. Esta cadena se construye con la funcion contraria toJSON(). |
Implementa DOM_Interface.
getChildByKey | ( | $key, | |
$grandchildren = true |
|||
) |
Metodo para buscar y retornar un hijo del elemento que contenga la misma clave que la pasada por parametro, este metodo es recursivo pero retorna el primer elemento que concuerde su clave, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: USE RECURSIVE FUNCTION!!
string | $key | La clave del elemento a buscar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
getChildren | ( | ) |
Metodo para retornar el array de todos los hijos del elemento DOM. Similar a DOM_Interface::getChildrenAll()
Implementa DOM_Interface.
getChildrenAll | ( | ) |
Metodo para retornar un array con todos los hijos de forma recursiva (nietos, bisnietos, ...) del elemento DOM. Similar a DOM_Interface::getChildren()
Implementa DOM_Interface.
getChildrenByTag | ( | $tag, | |
$grandchildren = true |
|||
) |
Metodo para buscar y retornar un array de hijos del elemento que contengan la misma etiqueta (TAG) que la pasada por parametro, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: RECURSIVE FUNCTION!!
string | $tag | La etiqueta (TAG) del elemento a buscar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
getChildrenByType | ( | $type, | |
$grandchildren = true |
|||
) |
Metodo para buscar y retornar un array de hijos del elemento que sean del mismo tipo (TYPE) que el pasado por parametro, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: RECURSIVE FUNCTION!!
string | $type | El tipo (TYPE) del elemento a buscar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
getCloseTag | ( | ) |
Metodo para leer la etiqueta HTML de cierre construida para este elemento, con sus atributos incluidos.
NOTE: Existen elementos que deben establecer la suya propia, como los elementos autocontendios (<img />, </br >, ...) o elementos sin etiqueta como 'textNode'.
Implementa DOM_Interface.
getConfiguration | ( | ) |
getDesc | ( | ) |
Metodo para leer la descripcion DOM de este elemento.
Implementa DOM_Interface.
|
static |
Metodo para obtener una etiqueta de definicion DTD que especifique el tipo de documento que estamos tratando. (HTML, XHTML, XML, ...)
int | $dtd | Un entero identificando el tipo de DTD a retornar. Puede ser una de las constantes de esta clase que comienzan con DTD_ |
|
static |
PATRON SINGLETON. Tomar una instancia de forma estatica.
$attrbs = DOM_attribs::getInstance();
getKey | ( | ) |
Metodo para tomar la clave del elemento.
Implementa DOM_Interface.
getOpenTag | ( | ) |
Metodo para leer la etiqueta HTML de apertura construida para este elemento, con sus atributos incluidos.
Implementa DOM_Interface.
getTag | ( | ) |
Metodo para leer la etiqueta DOM de este elemento.
Implementa DOM_Interface.
getText | ( | $filter = false | ) |
Metodo para retornar el texto de este elemento DOM (la concatenacion de los textos de todos los elementos textNode).
$filter | [boolean] Permite especificar si el texto se retorna filtrado mediante 'htmlspecialchars_decode(...)' y 'stripcslashes(...)' o no. [Por defecto NO] |
getTextAll | ( | $filter = false | ) |
Retorna todo el texto encontrado en este elemento y en sus hijos.
$filter | [boolean] Permite especificar si el texto se retorna filtrado mediante 'htmlspecialchars_decode(...)' y 'stripcslashes(...)' o no. [Por defecto NO] |
getType | ( | ) |
Metodo para leer el tipo DOM de este elemento.
Implementa DOM_Interface.
importConfINI | ( | $confFile = null | ) |
Importar las configuraciones desde el archivo config.ini, Utiliza la seccion del INI [CONF_SEC].
Si no se entrega parametro de ruta se utilizara el archivo de configuracion por defecto ('config.ini') en la ruta del pakete.
Debe contener como minimo las siguientes secciones: [PK_SEC] : Seccion para identificacion del pakete. [CONSTS_SEC] : Seccion para las constantes de la clase (PATH_CLASS_DOM, CONF_INI_FILE_DOM, ...) [CONF_SEC] : Seccion para las variables de configuracion (TAG, _text,...)
string | $confFile | (OPCIONAL, DEFAULT=NULL) La ruta completa al archivo de configuracion INI a cargar. |
Implementa DOM_Interface.
|
static |
Metodo estatico para construir un objeto DOM a la imagen y semejanza del objeto JSON entregado que deberia representar otro DOM_element con hijos, atributos, y caracteristicas propias.
NI QUE DECIR TIENE QUE EL OBJETO JSON ENTREGADO DEBE SER UN FIEL REFLEJO DE ALGUN ELEMENTO DE ESTA CLASE, NORMALMENTE SE OBTENDRA DECODIFICANDO EL RETORNO DE LA FUNCION toJSON(); (json_decode(...->toJSON();))
JSON | $objectJSON | Es un objeto creado con una cadena JSON. |
boolean | $return | Expresa si retornar (TRUE) el objeto creado o imprimirlo (FALSE). |
boolean | $base64values | Indica si codificar los textos en 'base64' o no. |
removeChild | ( | $child, | |
$grandchildren = true |
|||
) |
Metodo para eliminar el hijo del elemento que sea el mismo ('equalsExact') que el pasado por parametro, Retorna el numero de elementos eliminados, Este metodo puede ser recursivo, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: USE RECURSIVE FUNCTION!!
DOM_element | $child | El objeto hijo a eliminar. |
boolean | $grandchildren | TRUE(DEFAULT)=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
removeChildByKey | ( | $key, | |
$grandchildren = true |
|||
) |
Metodo para eliminar el hijo del elemento que contengan la misma clave que la pasada por parametro, Este metodo es recursivo, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: USE RECURSIVE FUNCTION!!
string | $key | La clave del elemento a eliminar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
removeChildrenAll | ( | ) |
Elimina todos sus hijos (ELIMINA EL CONTENIDO ENTERO DE ESTE ELEMENTO).
Implementa DOM_Interface.
removeChildrenByTag | ( | $tag, | |
$grandchildren = true |
|||
) |
Metodo para eliminar los hijos del elemento que contengan la misma etiqueta (TAG) que la pasada por parametro, Retorna el numero de elementos eliminados, Este metodo es recursivo, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: USE RECURSIVE FUNCTION!!
string | $tag | La etiqueta (TAG) del elemento a eliminar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
removeChildrenByType | ( | $type, | |
$grandchildren = true |
|||
) |
Metodo para eliminar los hijos del elemento que sean del mismo tipo (Type) que el pasado por parametro, Retorna el numero de elementos eliminados, Este metodo es recursivo, el segundo parametro (por defecto TRUE) indica si comprobar recursivamente en nietos...
CAUTION!: USE RECURSIVE FUNCTION!!
string | $tag | La etiqueta (TAG) del elemento a eliminar. |
boolean | $grandchildren | TRUE=elimina recursivamente, FALSE=solo mira en los hijos directos. |
Implementa DOM_Interface.
setChildren | ( | array | $children = null | ) |
Metodo para establecer los hijos al elemento DOM. Estos hijos a su vez deben ser elementos DOM.
$children | Array Elementos del DOM. |
Implementa DOM_Interface.
setConfiguration | ( | array | $conf | ) |
Grabar la configuracion de este elemento
array | $conf | Array asociativo de variables de configuracion en formato 'clave=valor' |
Implementa DOM_Interface.
setKey | ( | string | $key = null | ) |
Metodo para establecer la clave de este elemento DOM.
$key | string clave del elemento. |
Implementa DOM_Interface.
setText | ( | $text | ) |
Agreaga un hijo de texto (textNode) a este elemento DOM, eliminando los hijos tipo 'textNode' que tubiese
string | $text | para este elemento. |
toHTML | ( | ) |
Metodo para retornar la cadena que representa el HTML de este elemento DOM con sus atributos, y los de sus hijos, correspondientes.
Implementa DOM_Interface.
toJSON | ( | $return = true , |
|
$base64values = true |
|||
) |
Metodo para retornar la cadena JSON que representa este elemento DOM con sus hijos y con sus atributos, y los de sus hijos, correspondientes.
RECOMENDADO: Aporta un segundo parametro para codificar todos los valores (no las claves) en 'base64', (DEFECTO=true), asi podriamos evitar el problema de los tipos de codificacion empleados (JSON solo admite UTF-8).
NO UTILIZA LA FUNCION PHP 'json_encode(..)'
<del>Utiliza las siguientes constantes PHP 5.3: JSON_HEX_QUOT && JSON_HEX_TAG && JSON_HEX_AMP && JSON_HEX_APOS</del>
boolean | $return | Indica si retornar el resultado (TRUE) o imprimirlo (FALSE). |
boolean | $base64values | Indica si codificar los textos en 'base64' o no. |
Implementa DOM_Interface.
|
protected |
:OVERRIDE-PARENT:
Notifica una accion de escritura al objeto; Si es de solo-lectura lanzara una Excepcion.
DOMBasicElementReadOnlyException; |
|
protected |
¿ Lanzar Aviso cuando se lee un atributo que no existe ?
const AVISO_SINGLETON =true |
¿ Lanzar Aviso cuando se intenta tomar una instancia estatica mediante el 'Patron SINGLETON' sin estar permitida por ''PATRON SINGLETON' ?
const PATRON_SINGLETON =true |
¿ Permitir el patron SINGLETON ?