Eh bien, je n'arrive pas à ajouter des commentaires à l'intérieur d'un bloc code> Heredoc code> dans mon foo.php code> Fichier:
<-- //
--> //
4 Réponses :
Essayez ceci:
echo <<<_HEREDOC_FOO <!-- okay this comment was intended to explain the code below but it is showing up on the web page html sent to the browser --> <form action="foo.php" method="post"> <input type="submit" value="DELETE RECORD" /></form> _HEREDOC_FOO;
Question était dans le commentaire PHP, pas de HTML
@garvey qui n'est pas combien cela est compris. L'OP n'a pas spécifié quel type de commentaire
c'est par conception. Une fois que vous êtes votre hérédoc, tout ce que vous tapez jusqu'à ce que vous puissiez la fin, elle soit traitée comme faisant partie d'une longue chaîne. Votre meilleur choix serait de casser votre hérédoc, de mettre votre commentaire, puis de commencer une nouvelle ligne d'écho comme quelqu'un d'autre mentionné, vous pouviez faire des commentaires HTML, mais ceux-ci seront toujours visibles pour quiconque Views votre code source p> p>
Cela défait le but de l'hérédoc
Eh bien, il a mentionné son texte est massivement tronqué et s'il a des commentaires côté serveur, il ne veut pas montrer, c'est la seule façon de le faire. Votre méthode mentionnée est correcte, mais seulement si elle est correcte pour que les commentaires HTML soient inclus.
@Daoogre comme je l'ai expliqué au Downvoter de ma réponse, l'OP n'a jamais spécifié quel type de commentaire souhaite
En fait (dans mon cas particulier quand même), les commentaires ne doivent pas être visibles dans la source visible par l'utilisateur du navigateur lorsqu'ils considèrent la source, et je vais casser l'hérédoc pour le faire fonctionner - merci à tous, et comme vous l'avez probablement soupçonné que je suis Nouveau à PHP, etc. (beaucoup de connaissances de programmation mais nouvelle à PHP, etc.)
Aucun problème veut que, c'est ce que nous sommes ici.
Vous pouvez transmettre la chaîne de commentaire en tant que paramètre d'une fonction variable.
function heredocComment($comment) { return ""; } $GLOBALS["heredocComment"] = "heredocComment"; echo <<<_HEREDOC_FOO {$heredocComment(" okay this comment was intended to explain the code below but it is showing up on the web page html sent to the browser ")} <form action="foo.php" method="post"> <input type="submit" value="DELETE RECORD" /></form> _HEREDOC_FOO;
Probablement ne vaut probablement pas la peine, mais brillante néanmoins.
Le moyen le plus simple de le faire consiste à utiliser la même tactique que Seppotaalasmaa utilisée, mais plus courte: ajoutez simplement la première ligne définissant $ commentaire code>, Et vous pourrez insérer des commentaires dans la prochaine hérédoc de cette façon. Cela fonctionnera également si vous ne définissez pas la fonction de la portée globale. P> p>
La réponse courte est que vous ne pouvez pas. Ce que @Neal montre est le seul moyen (mais note que les commentaires apparaîtront dans le navigateur de l'utilisateur dans le code source)
@Pekka Oui, il montrent, mais l'utilisateur ne le voit pas à moins de voir la source