IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[XML] Les balises auto-fermantes dans XML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut [XML] Les balises auto-fermantes dans XML
    bonjour,

    je galère sur un problème des balises auto-fermantes dans XML.

    j'ai un fichier XML, et je l'annalyse avec PHP Sax.

    les codes de PHP sont:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?php
     
    function accessibiliser($file)
    {
            $xml_parser = xml_parser_create();
            xml_set_element_handler($xml_parser, "ouvrante", "fermante");
            xml_set_character_data_handler($xml_parser, "texte");
            xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, false);
            if (!($f = fopen($file, "r"))) {
              die("Impossible d'ouvrir le fichier '$file'");
            }
     
            while ($data = fread($f, 1024)) {
              if (!xml_parse($xml_parser, $data, feof($f))) {
                die(sprintf("erreur XML : %s ligne %d",
                            xml_error_string(xml_get_error_code($xml_parser)),
                            xml_get_current_line_number($xml_parser)));
              }
            }
            xml_parser_free($xml_parser);
    }
     
    function ouvrante($parser, $name, $attrs)
    {
     echo "<$name";
     foreach ($attrs as $k => $v)   echo " $k='$v'";
     echo ">";
    }
     
    function fermante($parser, $name) { 
    	echo "</", $name, ">"; 
    }
     
    function texte($parser, $data) {  echo $data; }
     
     
    ?>
    la question de mon prof est:
    Afin de ne pas dégrader la présentation des balises link, meta, input, img etc, il faut commencer par modifier les preneurs élémentaires ci-dessus afin qu’ils produisent l’abréviation <balise /> et non <balise ></balise > comme actuellement . Pour cela, il ne faut pas appliquer echo sur > dans le preneur des ouvrantes, mais différer son envoi dans l’événement SAX suivant : si celui-ci appelle le preneur des fermantes, l’abréviation y sera possible, sinon il faut envoyer >. On utilisera un tableau global t et un compteur c pour mémoriser si > a été envoyé pour la balise ouvrante de profondeur c.

    Alors je ne sais pas trop comment le faire

  2. #2
    Membre chevronné Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Points : 1 895
    Points
    1 895
    Par défaut
    montre nous ce que tu as déjà essayé même si ça ne fonctionne pas comme tu veux

Discussions similaires

  1. xml et balise auto-fermante
    Par zozizozu dans le forum Général Python
    Réponses: 1
    Dernier message: 31/08/2010, 17h52
  2. fichiers XML avec des balises auto-fermantes
    Par processeur dans le forum Général Python
    Réponses: 0
    Dernier message: 15/08/2009, 20h14
  3. [DOM] DOMDocument/DOMElement : balise auto-fermante, javascript
    Par fgallnii dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 02/02/2008, 13h14
  4. [DOM] balise auto fermante
    Par ymerdy dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 04/11/2007, 23h53
  5. [Configuration] Balise auto fermante
    Par bourbaki2003 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 20/05/2006, 12h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo