Signes "<" et ">" dans une chaine de caractères PHP
Résolu
papounet007
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
meuhlol Messages postés 1896 Date d'inscription Statut Membre Dernière intervention -
meuhlol Messages postés 1896 Date d'inscription Statut Membre Dernière intervention -
Problème supposé tout simple sur lequel je butte depuis plusieurs heures :
J'ai fait un code PHP de test qui est le suivant :
Cela n'affiche que la première partie : "Famille TOTO". Si j'enlève "aaaa", çà marche, mais dès que j'ajoute n'importe quoi entre les signes "<" et ">", la fin n'apparait plus !
Je n'ai rien trouvé dans les manuels PHP qui indiquerait que "<" ait une signifie spéciale dans les chaines de caractères.
J'ai essayé sur le serveur de test de mon PC (wampserver sous Windows 7) et sur mon hébergeur OVH : c'est pareil !
Une idée ?
Merci de votre aide.
J'ai fait un code PHP de test qui est le suivant :
<?php
$a = '"Famille TOTO" <aaaa>'; // guillemet simple puis guillemet double au début
echo $a;
Cela n'affiche que la première partie : "Famille TOTO". Si j'enlève "aaaa", çà marche, mais dès que j'ajoute n'importe quoi entre les signes "<" et ">", la fin n'apparait plus !
Je n'ai rien trouvé dans les manuels PHP qui indiquerait que "<" ait une signifie spéciale dans les chaines de caractères.
J'ai essayé sur le serveur de test de mon PC (wampserver sous Windows 7) et sur mon hébergeur OVH : c'est pareil !
Une idée ?
Merci de votre aide.
A voir également:
- Signes "<" et ">" dans une chaine de caractères PHP
- Caractères ascii - Guide
- Caractères spéciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
- Plus de chaine tv - Guide
- Chaine radio - Télécharger - Médias et Actualité
4 réponses
As-tu essayé la concaténation et en remplaçant les "<" et ">" par leur entité html ?
<?php
$a = '"Famille TOTO" ."<aaaa>" // guillemet simple puis guillemet double au début
echo $a;
?>
au lieu de < tu mets & lt (sans espace entre & et lt)
au lieu de > tu mets & gt (sans espace entre & et gt)
xD
(____(_bdKey____________()~
Pensez à voter pour des réponses.
Pensez à cliquer sur "Résolu" si votre problème est réglé.
au lieu de > tu mets & gt (sans espace entre & et gt)
xD
(____(_bdKey____________()~
Pensez à voter pour des réponses.
Pensez à cliquer sur "Résolu" si votre problème est réglé.
Bon sang, mais bien sûr !
J'avais déjà pensé à mettre "& lt;" dans mon expression, mais ce n'est pas possible car je veux utiliser $a comme argument d'une fonction mail().
Mais je n'avais pas fait attention que le résultat de mon echo allait se retrouver dans du code html et donc que les "<" allaient être interprétés par html, en l'occurrence ignorés avec leur contenu.
En résumé, $a contient bien ce qu'il est sensé contenir, mais son affichage par echo était faux.
Merci à tous !
J'avais déjà pensé à mettre "& lt;" dans mon expression, mais ce n'est pas possible car je veux utiliser $a comme argument d'une fonction mail().
Mais je n'avais pas fait attention que le résultat de mon echo allait se retrouver dans du code html et donc que les "<" allaient être interprétés par html, en l'occurrence ignorés avec leur contenu.
En résumé, $a contient bien ce qu'il est sensé contenir, mais son affichage par echo était faux.
Merci à tous !