Do not mis interpret
<?php echo 'Ending tag excluded';
with
<?php echo 'Ending tag excluded';
<p>But html is still visible</p>
The second one would give error. Exclude ?> if you no more html to write after the code.
جداسازی دستورالعملها
همانند C یا Perl PHP نیازمند پایان هر خط کد با استفاده از ; است. برچسب پایانی کد PHP بطور خودکار یک ; دریافت مینماید. برچسب پایانی برای بلوک خط جدید را نیز در صورت وجود منظور مینماید.
<?php
echo 'This is a test';
?>
<?php echo 'This is a test' ?>
<?php echo 'We omitted the last closing tag';
Note:
برچسب پایانی PHP در پایان فایل اختیاری است و در بعضی حالات حذف آن هنگام استفاده از include() یا require() مفید بوده و خطوط خالی انتهای فایل حذف مینماید و شما میتوانید درادامه به انتهای فایلها header اضافه نمایید و همچنین در صورت بافر نمودن خروجی به شما کمک کرده و خطوط خالی فایلهای اضافه شده را از بین میبرد.
Krishna Srikanth ¶
6 years ago
pbarney ¶
1 year ago
If you want to keep the newline after a closing tag in the output, just add a space after the closing tag, and the newline will not be ignored.
james dot d dot noyes at lmco dot com ¶
5 years ago
If you are embedding this in XML, you had better place the ending '?>' there or the XML parser will puke on you. XML parsers do not like processing instructions without end tags, regardless of what PHP does.
If you're doing HTML like 90% of the world, or if you are going to process/interpret the PHP before the XML parser ever sees it, then you can likely get away with it, but it's still not best practice for XML.
Darabos, Edvrd Konrd ¶
4 years ago
One newline character (or sequence) is dropped out by the parser after "?>", so you can add the beloved "final newline" to your file after "?>"
Example for plain text outputs:
<? foreach($array as $elem){ ?>
Value: <?=$elem?>
<? } ?>
(You have to add an extra enter after <?=$elem?> if you want to see a newline in the output.
