Api gest_xml

détail des méthodes utilisées par le classe gest_xml

clean_doc()

suppression du document xml des propietes de l’instance en cours nettoyage des variables $this-props[‘doc_in’], $this-props[‘doc_mode’],  $this->name[‘doc_mode’]

close_doc()

nettoyage des variables concernat le document dans la table props le document est alos supprime de l’objet

DOM_add_CDATA($node,$contenu)

crée et ajoute au nœud en cours un nouvel élément CDATA @param string contenu texte du cdata

DOM_add_node($node_parent,$nom_elem="pas_de_nom")

ajoute et retourne un nouvel élément enfant a celui passe en argument @param string $nom_elem tagname du nouvel element @param  DOMnode $node_parent @return DOMnode $node_parent element auquel on ajoute les enfants

DOM_add_node_attribut($nom_att = '',$val_att='',$elem = '')

ajoute un nouvel attribut a l’élément passe en argument @param string nom_att nom de l’attribut @param string val_att valeur de l’attribut @param DOMnode $elem element auquel on ajoute l’argument

DOM_add_node_to_target($node='',$node_dest='')

ajoute un élément $node  au nœud $node_dest @param DOMnode $node @param DOMnode $node_dest

DOM_add_nodes_chidren($nom_enf = array(), $attrib_enf= array(), $content_enf=array(),$content_format=array(), $noeud_parent='')

crée un ensemble de nœuds  enfants e l’élément passes en paramètre @param  array() $nom_enf nom des nœuds à ajouter @param  array() $attrib_enf tableau de tableaux associatifs @param  array() $content_enf tableau de contenu des nœuds @param  array() $noeud_parent noeud accueillant les noeuds enfants

DOM_add_several_arguments_to_node($array_arg = array(), $noeud = '')

Création d attributs multiples @param array $table tableau des attributs $table[index][nom_att][val_att] @param object DOMnode $noeud Element  auquel on doit ajouter les attributs

DOM_create_root($nom_elem="root")

Crée un DOMdocument puis ajoute et retourne un nouvel element racine @param $nom_elem tagname du nouvel element @return DOMnode  $root noeud racine du document

DOM_cut_node($node,$profondeur=1)

coupe un element @param DOMnode $node element a copier @param integer $profondeur 1: copie egalement les noeuds enfant (par defaut) methode interne e la classe

DOM_delete_node($node)

supprime un element @param DOMnode $ode element que l’on souhaite supprimer

DOM_fragment($node,$profondeur,$mod=1)

copie ou colle un element @param DOMnode $node element e copier (mod:1) ou element recevant lors du colle (mod:2) (copier par defaut) @param integer $mode 1 copier 2 coller la copie se fait par clonage du noeud passe en parametre la profondeur de la copie et passee en parametre methode interne e la classe

DOM_get_content_node($elem)

retourne  le contenu utf8_decodé du nœud passe en paramètre @param DOMnode $elem @return string  $elem->nodeValue

DOM_get_element($nom_elem="*")

retourne un élément.  le document doit avoir préalablement être ouvert avec open_doc() @param string $nom_elem nom de l’element recherche si vide  renvoit tous les elements @return tableau de DOMnode

DOM_get_elementById($id_elem)

rtourne l’element ayant un id identique à $id_elem

DOM_get_first_child($node)

retourne le premier enfant d’un noeud @param domNODE $node  noeud dont on souhaite recuperer le premier enfant @return  DOMnode $first_node  noeud du premier enfant

DOM_get_last_child($node)

retourne le dernier enfant d’un nœud @param domNODE $node  noeud dont on souhaite recuperer le dernier enfant

DOM_get_new_node($nom_elem)

crée et retourne un nouvel element @param $nom_elem tagname du nouvel element @return DOMnode $elem nouvel element creee methode interne e la classe

DOM_get_next_sibling($node)

retourne le prochain frère d’un nœud @param domNODE $node  noeud dont on souhaite recuperer le prochain frere @return  DOMnode $next_sibling  noeud du prochain frere

DOM_get_node_attributs($node)

retourne tous les attributs d’un élement dans une table @param object DOMnode $node element dont on veut recuperer les attributs @return  array() $tb_att tableau nom/valleur des attributs

DOM_get_node_children($nom_elem)

retourne un tableau contenant les nœuds enfants de l’élément @param string $nom_elem nom de l’element @return array $nodes_child contenant les nodes enfants de l’element

DOM_get_node_name($elem)

retoune le nom de l’élément passe en paramétre @param objet DOM $elem element @return string content contenu de l’element

DOM_get_node_sibling($elem)

retourne un tableau des noeuds freres @param objet DOM $elem element @return array $tb_freres tableau des noeuds freres

DOM_get_parent_node($elem)

retourne le noeud parent de L’ELEMENT passe en parametre @param $elem element @return  objet DOM  $parent

DOM_get_prev_sibling($node)

retourne le précédent frère d’un nœud @param domNODE $node  noeud dont on souhaite recuperer le precedent frere @return  DOMnode $previous_sibling  noeud du prochain frere

DOM_get_root()

retourne l’élément racine du document @return objet DOMnode root

DOM_get_val_attributs_by_name($node,$name_att)

retourne la valeur de l’attibut passe en paramètre @param object DOMnode $node element dont on veut recuperer l’attributs @param string $name_att nom de l’attibut dont on souhita recuperer la valeur @return  string $attrib valeur de l’attribut  ou 0 en cas d’echec en lecture de  this->get_prop(‘doc_in’)

DOM_import_element($node,$node_dest,$profondeur=1)

copie un élement d’un autre document @param DOMnode $node element a copier @param DOMnode $node_dest element destination @param integer $profondeur 1: copie egalement es noeuds enfant (par defaut) @return DOMnode  $new_node  le noeud copie dans le document

DOM_insert_file_content()

fonction de gestion de catalogue recherche et inclus dans le document en cours tous les element contenant l’argrument fic_xml  (sauf l’element racine) , cet argument doit contenir comme valeur le path complet du fichier e inclure. Le contenu de l’element racine de ce document est alors inclus dans le noeud en cours

DOM_interchange_node

intervertit deux noeuds @param DOMnode $node element e deplacer @param DOMnode $node element e remplacer inverse le nœud destination et le nœud node ———————–exemple ————————————   $gest3 = new gest_xml(); $root = $gest3->DOM_create_root(« racine »); $n1=$gest3->DOM_add_node($root,’node1′); $n2=$gest3->DOM_add_node($root,’node2′); $n3=$gest3->DOM_add_node($root,’node3′); $n11=$gest3->DOM_add_node($n1,’node1.1′); $n12=$gest3->DOM_add_node($n1,’node1.2′); <racine> <node1> <node1.1/> <node1.2/> </node1> <node2/> <node3/> </racine> $gest3->DOM_interchange_node($n12,$n2); <racine> <node1> <node1.1/> <node2/> </node1> <node1.2/> <node3/> </racine>

DOM_make_content($node='', $val_content='')

ajoute du contenu à l’élément passe en argument @param DOMnode $nom_elem element auquel on ajoute du contenu @param propriete  props[‘doc_in’] le fichier doit etre ouvert via la methode open_doc($abs_fic,$mode_retour=1) qui initialise la propriete props[‘doc_in’]

DOM_node_is_content_by($node,$nodeName,$nodeValue='',$tb_att='')

vérifie si un noeud a comme ancetre un noeud de nom $nodeName pouvant etre precise par sa valeur ou l’un (voir plusieurs de ces attributs @param DomNode $node @param string  $nodename @return bolean FALSE/TRUE

DOM_paste_node($node_dest)

coller des éléments . colle le contenu du Documentfragment frag sous le noeud passe en parametre @param DOMnode $node dest node destainataire du collage

DOM_replace_node($node,$node_dest)

remplace  un element par un autre copie un element  e l’interieur d’un document @param DOMnode $node element e copier @param DOMnode $node element e remplacer remplce le noeud destiantion par le noeud node

DOM_to_simple()

converti un document DOM en Document SIMPLXML et met e jour les valeurs du tableau props Attention : modifie le contenu de props (doc_in et doc_mode)

dump_doc($doc = null)

Retourne le contenu d’un fichier XML si $doc= » c’est le $props[‘doc_in’] qui est utilise @param DomDocument $doc @return string  $doc->saveXml() contenu du fichier XML

get_array_node_attributs($simple_elem)

Retourne   les attributs d un nœud  sous forme de tableau @param object Objet noeud en simple xml duquel on souhaite recuperer les attributs @return array $tb tableau des valeurs des attributs

get_node_attributs_by_Xpath ($patern)

retourne un tableau des tableaux associatifs d’attributs des differents elements recuperes via la requete XPATH @param string $patern pattern XPATH @return array() $table_attrib table de de table d’attributs

get_node_by_Xpath($patern)

retourne un ensemble d’éléments sectionnes par le pattern @param string $patern pattern XPATH @return array() $table table d’objet DOMnode

get_node_value_by_Xpath($patern)

retourne un tableau des contenus d’ éléments sélectionnes par un pattern XPATH @param string $patern pattern XPATH @return array() $table table contenus de l’element

get_prop($in_prop)

retourne la valeur d’une propriété de l objet @param string $in_prop nom de la propriete que l on souhaite recuperer @return mixed $this->props[$in_prop] la valeur de la propriete

init_xml()

creation d’un nouvel objet dom

load_doc($string_doc,$mode_retour=2)

chargement d’un fichier xml dans un objet Dom ou simple xml  a partir d’une chaine de caractères @param $mode_retour * 1 ->DOM (defaut) 2->SimplXML la valeur de $mode_retour permet de specifier le type de l’objet renvoye par la metode : @param string $string_doc chaine de caracteres contenant le XML @return mixed Simple ou DOM $this->props[(‘doc_mode’](mode du document (1 ->DOM (defaut) 2->SimplXML) la valeur retournee est stockee dans le tableau props de l’instance elle est consultable via la methode get_prop de l’instance de gest_xml

open_doc($abs_fic,$mode_retour=1)

chargement d’un fichier xml dans un objet Dom ou simple xml @param $mode_retour la valeur de $mode_retour permet de specifier le type de l’objet renvoye par la metode : 1 ->DOM (defaut) 2->SimpleXML @param string $abs_fic nom absolu du fichier source @return mixed ne retourne rien si il n a pas pu ouvrir le fichier et renseidne $this->erreur l’objet dom ou simplexml si ok $this->props[(‘doc_in’] (fichier au format DOM ou SimpleXML $this->props[(‘doc_name’](nom absolu du fichier source) $this->props[(‘doc_mode’](mode du document (1 ->DOM (defaut) 2->SimplXML) la valeur retournee est stockee dans le tableau props de l’instance elle est consultable via la methode get_prop de l’instance de gest_xml

return_type($node)

retourne un tableau contenant le type du nœud et la description de ce type de noeud @param objet DOM $elem element @return array() $retour $retour[‘type’] $retour[‘label’]

save_doc()

sauvegarde du document  $this->get_prop(‘doc_in’) @return integer $size nombre d’octets ecrit  ou 0 si le source ou le nom du fichier sont vides

set_prop($prop, $value)

ajout ou mise à jour d’un élément (ou de sa valeur) du tableau associatif $this->props

simple_to_dom()

converti le document contenu dans doc_in de  SimpleXML en Document DOM et met e jour les valeurs du tableau props Attention : modifie le contenu de props (doc_in et doc_mode)

toogle_mode($mod)

bascule le  document de dom vers simplexml ou inversement @param= integer $mod type de document desire 1->DOM 2->simpleXML