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

Langage PHP Discussion :

equivalent is_html() php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 21
    Points : 11
    Points
    11
    Par défaut equivalent is_html() php
    Bonjour à tous,

    Je souhaiterai savoir s'il existe une fonction en php qui permettrait lors de la lecture d'un fichier de savoir si la ligne en cour de lecture est de type html (contient une balise HTML) ou pas.

    J'ai essayé avec la fonction TidyNode::isHtml, et ca n'a pas l'air de fonctionner puisqu'elle me renvoie TRUE même pour une ligne contenant uniquement du php.


    Merci par avance et bonne journée.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    essaye de comparer la chaine avec un strip_tags

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    Merci pour ta réponse, mais je ne vois pas vraiment où tu veux en venir.

    strip_tags() supprime les balises html et php, comment puis je faire pour vérifier s'il s'agit bien d'une ligne contenant de l'html avec cette fonction ?

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par Djaydjay13 Voir le message
    Merci pour ta réponse, mais je ne vois pas vraiment où tu veux en venir.

    strip_tags() supprime les balises html et php, comment puis je faire pour vérifier s'il s'agit bien d'une ligne contenant de l'html avec cette fonction ?
    si la chaine est différente avec le strip_tags alors c'est du HTML...

    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
    function is_html($str)
    {
        return strip_tags($str) !== $str;
    }
     
    $str = 'hello';
    var_dump(is_html($str));
     
    $str = '<p>hello</p>';
    var_dump(is_html($str));
     
    /*
    bool(false)
    bool(true)
    */

  5. #5
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    C'est pas faux mais ça ne fournit pas une information sûre, exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $str = '<xml>hello</xml>';
    var_dump(is_html($str)); // true
     
    $str = '<xsl:apply-templates />';
    var_dump(is_html($str)); // true
    Il faudrait tester l'intégralité du Document XHTML pour déterminer avec certitude son type.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    ça marche parfaitement, merci pour ton aide.

    Bonne journée

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par Benjamin Delespierre Voir le message
    C'est pas faux mais ça ne fournit pas une information sûre, exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $str = '<xml>hello</xml>';
    var_dump(is_html($str)); // true
     
    $str = '<xsl:apply-templates />';
    var_dump(is_html($str)); // true
    Il faudrait tester l'intégralité du Document XHTML pour déterminer avec certitude son type.
    de toutes façons on peux jamais être sur de se genre d'information, il suffis qu'un texte quelconque comporte ce qui est pour nous une balise HTML et c'est ça sera considéré en tant que que tel (dixit Perceval)

  8. #8
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    EH oui. Pour moi, le seul moyen sûr c'est de le faire valider par la DTD kivabien

  9. #9
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par Benjamin Delespierre Voir le message
    EH oui. Pour moi, le seul moyen sûr c'est de le faire valider par la DTD kivabien
    le DTD valide en document entier, la on a qu'un seul bout.

  10. #10
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Citation Envoyé par Benjamin Delespierre Voir le message
    Il faudrait tester l'intégralité du Document XHTML pour déterminer avec certitude son type.
    C'est bien ce que je dis

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Dojo] Equivalent empty (php)
    Par bruno.rotrou dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 06/04/2008, 14h48
  2. Equivalence code php-javascript - merci
    Par atefr dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/01/2008, 14h44
  3. PL/SQL - Equivalent explode() php
    Par Anasha dans le forum PL/SQL
    Réponses: 4
    Dernier message: 23/11/2007, 14h04
  4. equivalent mysql_fetch_assoc (PHP) en Perl ?
    Par Invité dans le forum SGBD
    Réponses: 3
    Dernier message: 27/08/2007, 16h39
  5. Equivalent en PHP de la fonction ASP server.mappath()
    Par arnaud_matard dans le forum Langage
    Réponses: 3
    Dernier message: 05/12/2006, 23h08

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