[PHP] Petite astuce pour afficher simplement du code HTML :D

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par SuperPJ, 24 Juillet 2005.

  1. SuperPJ
    SuperPJ WRInaute occasionnel
    Inscrit:
    15 Janvier 2005
    Messages:
    413
    J'aime reçus:
    0
    Au lieu de faire :
    Code:
    echo "<FONT COLOR=\"Red\">Les antislashes c'est pénible</FONT>";
    ... qui vous oblige à faire attention de ne pas oublier des "\" devant les guillemets ...

    ou encore :
    Code:
    <?
    mon code php
    ?>
    <FONT COLOR="Red">Y'a plus d'antislashes mais pour afficher des <? echo $variables; ?> c'est pas joie :'(</FONT>
    <?
    mon code php
    ?>
    ... qui, en plus de pas être clair, vous oblige à faire des <? echo $variable; ?> quand il faut afficher une variable ...


    Vous avez une alternative très sympa mais pourtant très peu utilisée qui est :
    Code:
    echo <<<EOF
    <FONT COLOR="Red">Je n'ai plus de problèmes avec les antislashes ou les $variables =)</FONT>
    EOF;
    Essayez, vous allez voir que ça marche ;)
    PHP va afficher tout ce qu'il y a entre "<<<EOF" et "EOF;" (attention "EOF;" doit être seul sur une ligne).

    Les avantages :
    - Vous pouvez indenter votre code html comme bon vous semble
    - Toutes les $variables sont interprétées automatiquement
    - Pas besoin de mettre d'antislashes devant quoique ce soit (guillemets, apostrophes, etc..)
    - Vous pouvez utiliser la paire de délimiteurs que vous voulez. Par exemple "FIN" plutot que "EOF"

    Voili voulou ;)
     
  2. Didier_S
    Didier_S WRInaute occasionnel
    Inscrit:
    24 Août 2004
    Messages:
    470
    J'aime reçus:
    2
    tiens en effet, je connaissais EOF; , mais j'avais jamais pensé à l'utiliser pour du code HTML... Pas bête
    cependant, j'ai bien peur que mon éditeur PHP me pète à la gueule si je m'amuse à ça ;)

    en tout cas ... BIEN JOUE, SUPERPJ !!
     
  3. SuperPJ
    SuperPJ WRInaute occasionnel
    Inscrit:
    15 Janvier 2005
    Messages:
    413
    J'aime reçus:
    0
    Merci Didier :oops:

    Je te confirme que j'utilise souvent cette "technique" comme tu peux t'en rendre compte sur un ptit script que j'ai écrit récemment ;) ça marche nickel ... sinon pour l'éditeur j'utilise UltraEdit et il digère bien :p
    http://google.audiencestv.com/index.php.html
     
  4. TOMHTML
    TOMHTML WRInaute accro
    Inscrit:
    25 Août 2004
    Messages:
    2 502
    J'aime reçus:
    0
    c'était donc ça !
    et moi qui pensait que EOF était simplement un commentaire de ta part dans ton code... lol
    well done collègue !
     
  5. raspoutine59
    raspoutine59 WRInaute discret
    Inscrit:
    17 Mars 2005
    Messages:
    189
    J'aime reçus:
    0
    Chez moi ton truc ma marche pas et puis à force ça doit être illisible ! C'est surement pour ça que c'est très peu utilisé... car peu conventionelle.

    Rien que dans l'éditeur ça deviens le zouc, la coloration syntaxique part en sucette et les guillemets provoque des problemes d'affichage.

    Bref j'conseille la chose à personne
     
  6. TOMHTML
    TOMHTML WRInaute accro
    Inscrit:
    25 Août 2004
    Messages:
    2 502
    J'aime reçus:
    0
    moi au contraire je le conseille, au moins il n'y aura plus d'erreur à cause des apostrophes oubliées
    et puis, en même temps, je n'ai pas de "coloration syntaxique" alors...
     
  7. medium69
    medium69 WRInaute passionné
    Inscrit:
    7 Mai 2005
    Messages:
    1 940
    J'aime reçus:
    3
    J'ai beaucoup mieux à te proposer moi...

    Je reprend ton exemple :
    Code:
    echo "<FONT COLOR=\"Red\">Les antislashes c'est pénible</FONT>";
    Au lieu de faire cela, je fais comme ça :

    Code:
    echo '<FONT COLOR="Red">Les antislashes c\'est pénible mais je peux utiliser les signes " " " autant que je veux... le seul que je dois échappé est \', donc juste les apostrophes</FONT>';
    Je trouve cela bien plus simple quand même.
     
  8. Genzo
    Genzo WRInaute impliqué
    Inscrit:
    18 Juin 2004
    Messages:
    545
    J'aime reçus:
    0
    Tout à fait d'accord, et si il y a une variable dedant :

    Code:
    echo '<FONT COLOR="Red">J\'affiche ma variable $variable (qui est ' . $variable . '), et c\'est plutôt pas mal :-)</FONT>';
    EOF est à mon avis intéressant pour une parcelle de code HTML assez grande. Même si dans ce cas là je ferme PHP et je le réouvre seulement pour les variables à insérer (au moins la coloration synthaxique HTML est présente).
     
  9. medium69
    medium69 WRInaute passionné
    Inscrit:
    7 Mai 2005
    Messages:
    1 940
    J'aime reçus:
    3
    une portion d'un de code utilisant cette technique :

    Code:
    echo IMG_PUCE_NAV.'<a href="'.URL_ANNUAIRE.'/annuaire.php" title="L\'annuaire des '.number_format($nb_site_annuaire, 0, ',', ' ').' sites répertoriés.">'.$annuaire.'</a><br />';
    tu peux afficher tout ce que tu veux sans te prendre la tête avec les guillemets
     
  10. yuston
    yuston WRInaute impliqué
    Inscrit:
    24 Septembre 2004
    Messages:
    600
    J'aime reçus:
    0
    Les quotes simples c'est ce que j'utilise... et je fais de la concaténation pour les variables...
    Code:
    echo '<FONT COLOR="Red">Bonjour '.$nom_visiteur.' comment tu vas? Moi je m\' appelle Admin.</FONT>';
    
     
  11. Sir Dipp
    Sir Dipp WRInaute impliqué
    Inscrit:
    21 Juillet 2003
    Messages:
    899
    J'aime reçus:
    0
    <<<EOF c'est du perl, il y a la même chose pour mettre un contenu de variable sur plsuieurs lignes.

    C'est pour cela que ça fonctionne pas tout le temps, et je comme la plus part je préfére echo''; :)
     
  12. SuperPJ
    SuperPJ WRInaute occasionnel
    Inscrit:
    15 Janvier 2005
    Messages:
    413
    J'aime reçus:
    0
    Le problème avec les apostrophes (simple-quotes) c'est que vous êtes obligés de concaténer les variables puisque celles si ne sont pas interprétées et mettre des antislashes devant les apostrophes internes.

    Le problème avec les guillemets (quotes) c'est qu'il ne faut pas oublier un seul antislash devant les guillemets internes.

    Concernant la coloration syntaxique vous utilisez quoi comme éditeur ? Moi UltraEdit et ca ne lui pose aucun problème :p Je ne vois pas trop quels problèmes d'affichage ca pourrait poser sachant que "echo <<<EOF" est sur une ligne, "EOF;" est sur une ligne séparée, et que tout ce qu'il y a entre n'est que du code html tout ce qu'il y a de plus classique avec des délimiteurs fontionnant par paires :? bref quel éditeur vous pose problème ? ;)

    En tout cas chacun sa technique pour programmer, moi personnellement je préfère "<<<EOF" pour afficher de longues chaînes de caractères qui tiennent sur pluiseurs lignes parce que d'une part je n'ai besoin de rien échapper et d'autre part je n'ai pas besoin de concaténer les variables comme le nécessitent les simple-quotes :p

    >>> SIR DIPP : très bien vu pour le Perl :) Je suis programmeur Perl à la base ;) toi aussi ? ;)
     
  13. SnAKes
    SnAKes Nouveau WRInaute
    Inscrit:
    21 Mai 2004
    Messages:
    44
    J'aime reçus:
    0
    Y'a aussi utiliser des templates du genre Smarty pour séparer le code fonctionnel PHP du code de design HTML.
     
  14. Sir Dipp
    Sir Dipp WRInaute impliqué
    Inscrit:
    21 Juillet 2003
    Messages:
    899
    J'aime reçus:
    0
    Non pas vraiment, disons que je connais un peu le Perl :)
     
Chargement...
Similar Threads - [PHP] Petite astuce Forum Date
Astuce [PHP] Récolter ville, pays du visiteur Développement d'un site Web ou d'une appli mobile 9 Mars 2021
[PHP] Détecter le navigateur / bot en fonction du HTTP_USER_AGENT Développement d'un site Web ou d'une appli mobile 14 Septembre 2019
[PHP] Détecter le navigateur / bot en fonction du HTTP_USER_AGENT Développement d'un site Web ou d'une appli mobile 12 Janvier 2017
[PHP] Cookie vide dans une fonction, complet juste avant ou après Développement d'un site Web ou d'une appli mobile 25 Novembre 2014
[php] Cookie d'un domaine vers un sous-domaine Développement d'un site Web ou d'une appli mobile 29 Août 2014
[PHP]Cci mails Développement d'un site Web ou d'une appli mobile 18 Août 2014
[PHP] gethostbyname Développement d'un site Web ou d'une appli mobile 15 Février 2014
[PHP] file_get_contents retourne un "Connection timed out" Développement d'un site Web ou d'une appli mobile 14 Février 2014
[PHP] Regex Complexe Développement d'un site Web ou d'une appli mobile 29 Octobre 2013
[PHP] Formulaire dynamique Développement d'un site Web ou d'une appli mobile 2 Mai 2013
[php] error suite à code antiduplication Développement d'un site Web ou d'une appli mobile 5 Février 2013
[PHP] Condition et include Développement d'un site Web ou d'une appli mobile 31 Janvier 2013
[PHP] comprendre ce code pour pseudo-frame Développement d'un site Web ou d'une appli mobile 28 Décembre 2012
[PHP] Requête très lente Développement d'un site Web ou d'une appli mobile 22 Septembre 2012
[PHP] Question technique Regex Développement d'un site Web ou d'une appli mobile 28 Juillet 2012
[PHP] file_get_contents sur le serveur même... Développement d'un site Web ou d'une appli mobile 9 Juillet 2012
[PHP] FILTER_VALIDATE_IP et REMOTE_ADDR Développement d'un site Web ou d'une appli mobile 8 Juillet 2012
[PHP] Requête PDO à modifier Développement d'un site Web ou d'une appli mobile 13 Mai 2012
[PHP] Détecter l'OS, le navigateur et la langue [Résolu] Développement d'un site Web ou d'une appli mobile 4 Mars 2012
[Php] Vérifier la présence d'un slash en fin d'url Développement d'un site Web ou d'une appli mobile 2 Mars 2012