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 :

La doc se trompe ?


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 322
    Points : 5 680
    Points
    5 680
    Billets dans le blog
    1
    Par défaut La doc se trompe ?
    Bonjour,
    je me suis intéressé à la doc de strip_tags : https://www.php.net/manual/en/function.strip-tags.php. On y lit cet exemple :
    <?php
    $text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
    echo strip_tags($text);
    echo "\n";

    // Allow <p> and <a>
    echo strip_tags($text, '<p><a>');

    // as of PHP 7.4.0 the line above can be written as:
    // echo strip_tags($text, ['p', 'a']);
    ?>

    The above example will output:

    Test paragraph. Other text
    <p>Test paragraph.</p> <a href="#fragment">Other text</a>
    Je l'ai testé sur 2 navigateurs (Firefox et Chrome) et dans les 2 cas, j'obtiens
    Test paragraph. Other text

    Test paragraph.
    Other text
    Comment expliquer ce mystère ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  2. #2
    Membre éprouvé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 373
    Points : 1 014
    Points
    1 014
    Par défaut
    Bonjour,

    La documentation ne se trompe pas : dans le premier cas (un seul argument), toutes les balises sont supprimées et le texte est donc affiché sur une seule ligne.

    Dans le second cas, avec un deuxième argument, les balises <a> et <p> sont conservées et il y a donc bien un saut de ligne et Other text est un lien.

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 322
    Points : 5 680
    Points
    5 680
    Billets dans le blog
    1
    Par défaut
    Ah OK, mais si je veux obtenir un affichage où les balises sont affichées, je fais comment ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  4. #4
    Membre éprouvé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 373
    Points : 1 014
    Points
    1 014
    Par défaut
    Dans ce cas c'est htmlspecialchars() qu'il faudrait utiliser : les caractères comme inférieur et supérieur seront remplacés par leur équivalents en entités HTML et les balises ne seront donc plus interprétées. Par contre les commentaires seront affichés eux aussi et le résultat sera :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>
    [EDIT] Le texte sera bien affiché correctement dans le navigateur mais la chaîne de caractères contiendra &lt au lieu de < par exemple. Donc ce ne sera utile que si le but est d'afficher le texte

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

Discussions similaires

  1. Une doc VBScript complète et compacte
    Par jérôme dans le forum ASP
    Réponses: 5
    Dernier message: 13/03/2013, 10h46
  2. [FreeReport] Cherche Tutoriel ou doc
    Par b30ff dans le forum Autres outils décisionnels
    Réponses: 4
    Dernier message: 18/12/2004, 08h16
  3. Génerer automatiquement plusieurs fichier .doc
    Par brunovitch dans le forum QuickReport
    Réponses: 3
    Dernier message: 09/07/2002, 09h19
  4. Réponses: 4
    Dernier message: 27/03/2002, 12h03
  5. F.A.Q, Doc, cours, tutoriels sur JBuilder
    Par Ricky81 dans le forum JBuilder
    Réponses: 0
    Dernier message: 14/03/2002, 16h28

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