Hi Andrea,
Le 07/09/2017 à 03:45, Andrea Faulds a écrit :
Hi everyone,
This is the tiniest of issues, but it's bugged me for a long time and
makes the HTML produced by PHP code less readable than it out to be.
Specifically, PHP ignores a newline immediately following a ?> tag.
The reason for this is, from what I recall, to prevent issues where
whitespace at the end of a PHP file is echoed before headers can be
sent. On UNIX in particular, all text files (should) end in a newline,
so this is a reasonable and necessary feature.
However, for ?> tags anywhere that aren't right at the end of the
file, this is just a nuisance that makes for messy output. For
example, HTML output that should look like:
<table>
<tr>
<td>foo</td>
<td>bar</td>
</tr>
</table>
May instead end up looking something like:
<table> <tr>
<td>foo</td> <td>bar</td>
</tr></table>
Of course, HTML doesn't matter so much, it'll render the same to the
end-user. However, for outputting e.g. plain text, newlines can be
significant, and so you have to insert an ugly and surprising extra
newline following a tag.
Would anyone object to me changing how PHP handles this so that only
the final ?> tag consumes its following newline, and only at the end
of the file?
Thanks!
+1 to create a PHP8 branch and change the behavior there. not in PHP7.
Once again, some may think it's too early but, IMO, we should create
such a branch and encourage RFCs and changes targeting next major
version to be announced, discussed, implemented, and tested as soon as
possible. This is the only way to introduce BC breaks while minimizing
their impact. We saw this when talking about PHP7 features : when
proposed too late, changes introducing BC breaks generally must be
rejected, whatever their value.
Regards
François
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php