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