I just started to learn the php and found interestingly new only to me that single line php can affect the code (break the code and may output the html):
From the docs:
// $file_contents = '<?php die(); ?>' . "
";
Which results in ' . " "; (and whatever is in the lines following it) to be output to the HTML page.
But using comment on this wouldn't affect the code:
$file_contents = '<' . '?php die(); ?' . '>' . "
";
Ah, its only because of <
and >
or something else?
So, I'm curious to know what exactly the factors that affect from using single line comment?
This is an excerpt from the php.net website mentioned in my comment:
The "one-line" comment styles only comment to the end of the line or the current block of PHP code, whichever comes first. This means that HTML code after // ... ?> or # ... ?> WILL be printed: ?> breaks out of PHP mode and returns to HTML mode, and // or # cannot influence that. If the asp_tags configuration directive is enabled, it behaves the same with // %> and # %>. However, the tag doesn't break out of PHP mode in a one-line comment.
In your example, it would be the ?> that is breaking out of the comment as new lines and end PHP tags will override comments to end the script, which is why when you split the ? and the > into two strings and concatenated them, it didn't end the comment.