Bonjour à tous,
J'ai besoin pour un script php qui fait du remplacement de donnée dans un fichier de mentionner <? et ?>
Hors, à l'exécution ces balises sont interprétées.
Quelque a t-il eu idée ?
Merci par avance
Bonjour à tous,
J'ai besoin pour un script php qui fait du remplacement de donnée dans un fichier de mentionner <? et ?>
Hors, à l'exécution ces balises sont interprétées.
Quelque a t-il eu idée ?
Merci par avance
désactive short_open_tags dans le php.ini (recommandé)
Merci pour cette réponse mais si je fais ça, les autres balises du script, dont je souhaite qu'elles soient interprétées, risquent de ne plus l'être.
Pour être plus précis, je souhaite transmettre, par un script A, une chaine du genre <? traduit($word);?> à un str_replace pour qu'il remplace cette chaine par sa valeur dans un fichier. Lorsque je lance mon script A, <? traduit($word);?> est interprété avant même d'être transmis à str_replace.
C'est donc mon problème
![]()
Encode tes caractère speciaux avec htmlentities() et décode les apres si besoin avec html_entity_decode()
Tu peux aussi utiliser la balise <code>
Ou encore & l t ; ? et ? & g t ; (sans espaces)
J'ai essayé avec & l t ; ? (sans les espace) mais cela à pour effet que ne soit pas trouvé <? dans le fichier, car dans ce cas str_replace recherche respectueusement cette chaine de caractère.
J'ai aussi essayé "<"."?" et '<'.'?' mais là aussi, le code est interprété.![]()
Quant à la balise <code> elle ne règle rien non plus.
Et avec ?
Tout ce qui est entre guillemets en php est interprété... Entre simples quotes non
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $BufferIN = file_get_contents("monfichier.txt"); $bufferOUT = str_replace('<?1258?>', "MOT1", $BufferIN); $bufferOUT = str_replace('<?1875?>', "MOT2", $BufferIN);
Non, c'est pas tout à fait vrai... les variables sont évaluées, mais un ?> ne devrait pas être interprété comme une balise de fin, même entre double quotes.Envoyé par Linaa
Calahaan, qu'est-ce qui te fait dire que ces balises sont "interprétées" ? Peux-tu préciser exactement le dysfonctionnement ?
Si il y avait interprétation d'une balise de fin, il y aurait probablement une erreur générée.
Partager