Login   Register  
PHP Classes
elePHPant
Icontem

File: readme_es.txt

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Reynier Blanco  >  ubNode  >  readme_es.txt  >  Download  
File: readme_es.txt
Role: Documentation
Content type: text/plain
Description: description in spanish
Class: ubNode
Convert objects into XML and vice-versa
Author: By
Last change:
Date: 2008-11-23 19:03
Size: 2,765 bytes
 

Contents

Class file image Download
EL objetivo de esta clase es permitir un mapeo tanto de un objeto como de un XML, con el fin de realizar distintas transformaciones acorde a las necesidades del desarrollador.
Lo primero es leer ya sea un objeto o un fichero XML utilizando los métodos estáticos de la clase ubRoot la cual no es más que una clase más especializada.
Ejemplo:
    $root = ubRoot::load_object($t_a);   => retorna un objeto ubRoot
    $root = ubRoot::load_xml("node.xml");   => retorna un objeto ubRoot

Luego de tener el objeto ubRoot ya se puede obtener la información en cualquier de los formatos permitiendo además que en caso de ser un XML se pueda dar la dirección directamente de donde se desea se guarde.

Ya mencionado el objetivo se procedo a explicar como trabajar con la clase y especificar algunas características que permitirán leer el objeto

1.	De los objetos solo se tomarán el resultado de los métodos que empieces con "get__" y luego el nombre del atributo,  aunque el prefijo puede ser cambiado si se desea.

2.	De la misma forma para introducir los valores a la clase se hace necesario un método por cada atributo que se desee utilizar, dicho método debe tener como prefijo "set__", que al igual que en el caso del get__ puede ser cambiado

3.	El objetivo de utilizar un prefijo diferente al "get" al que estamos acostumbrados es porque por lo general parámetros que no queremos se mapeen o se registren en un XML, ya sea por que son calculables o porque lo que se guarda de ellos sea un identificador.
	Lo importante es que permite una gran flexibilidad al desarrollar a la hora de escoger que datos de una clase desea se mapeen

4.	En caso de los array se mapea toda la información según el caso. Las llaves del arreglo se representan como un nodo interno donde el nombre sería la misma llave en si, en caso de los valores numéricos son llevados a una cadena con el formato "_#" donde el # es la posición en el arreglo de ese elemento.

5.	Nótese que en el caso de que el objeto a mapear sea una clase se le adiciona un atributo al nodo de esta, "ub_class_name" que representa el nombre de la clase de dicho objeto.

6.	En caso de que al leer un XML se encuentre dentro de un nodo dos nodos con el mismo nombre lo comprende como un arreglo con ese nombre como clave y cada nodo se convertiría en una posición del arreglo.

7.	En caso de que al leer un XML se encuentre con varios nodos con nombre "_" lo tomara como un arreglo donde el nombre es el nodo que contiene a los que tienen nombre "_" y cada nodo de estos se convertirá en una posición dentro de dicho arreglo.

8.	En caso de que al leer un XML se encuentre con un nodo que posee un atributo "ub_is_array"  lo tomará como un nodo de una sola posición