Ejemplo n.º 1
0
 /**
  * Génère le XML d'une fonction pour le jeu de test.
  * Elle diffère de la fonction generateXMLForPHP dans la mesure où 
  * generateXMLFromTestSet n'utilise que des tableaux pour la fonction.
  * 
  * @param type $ei_fonction
  * @param EiProfil $profile
  * @return type
  */
 public function generateXMLFromTestSet($ei_fonction, EiProfil $profile)
 {
     $prefix = MyFunction::getPrefixPath();
     // On définit le document.
     $dom = new DomDocument("1.0", "utf-8");
     $dom->formatOutput = true;
     //Génération de l'url du xsl associé à la fonction
     $user = $dom->createElement('user');
     //$user->setAttribute("xsl", $urlxsl);
     $dom->appendChild($user);
     $nom_balise_fonction = $dom->createElement('fonction-' . $ei_fonction['function_id'] . '_' . $ei_fonction['function_ref']);
     $nom_balise_fonction->setAttribute("name", $ei_fonction['name']);
     $user->appendChild($nom_balise_fonction);
     //paramètre de la fonction
     foreach ($ei_fonction['params'] as $p => $param) {
         $nom_balise_param = $dom->createElement($param['name']);
         $param_value = $dom->createTextNode($param['valeur']);
         $nom_balise_param->appendChild($param_value);
         $nom_balise_fonction->appendChild($nom_balise_param);
     }
     //paramètres de profil
     foreach ($profile->getParams() as $param) {
         $nom_balise_param = $dom->createElement($param->getStringName());
         $param_value = $dom->createTextNode($param->getValue());
         $nom_balise_param->appendChild($param_value);
         $nom_balise_fonction->appendChild($nom_balise_param);
     }
     $dom->normalizeDocument();
     // renvoie du fichier XML sous forme de chaine de caractères.
     return $dom->saveXML();
 }