It's recommended不應該在文件末尾放置一個PHP結束標記以避免各種不正常的錯誤。但是有什麼情況需要關閉PHP標籤?PHP標記關閉 - 何時需要?
4
A
回答
17
如果要從PHP代碼塊切換到純文本輸出,則需要結束標記。
下面是一個例子:
<?php
// PHP code block
?>
<!-- plain text output and not processed by PHP -->
</body>
3
當你的PHP塊之後要輸出非PHP代碼,這只是必要的。
1
當你不只是使用PHP腳本:-)
9
順便說一句,如果你想知道你被跳過的結束標記阻止了什麼錯誤。由於Zend的解釋沒有詳細說明。
它不是PHP所必需的,並且省略了它可以防止意外將尾隨白色空間注入到響應中。
這意味着如果您想使用header()將某人重定向到某個其他位置或以任何方式更改HTTP標頭,那麼如果某些文件結束,您將無法並且會收到錯誤喜歡這個。
}
?>
//space here
因爲然後這個空間將作爲內容輸出到網站,然後你不能修改標題。
1
作爲一般規則,我總是添加結束標記,因爲這是我問號手指全天鍛鍊的唯一時間。那個可憐的問號在PHP中沒有愛;-)
但嚴重的是,當不需要時添加結束標記實際上會導致真正令人困惑的錯誤。因爲這個,我整個下午都把我的頭髮拉出來。麻煩通常是因爲在結束標記之後有空格,您不容易看到,但它們被解釋爲響應主體的一部分。如果您將此文件包含在希望稍後發送自定義標頭的另一個腳本中,這是個壞消息。腳本開始發送響應正文後,您無法發送標題信息,因此這些不可見的空格會導致腳本失敗。
+2
不要忘記三元運算符:$ var = expr? true-val:false-val; – 2009-05-04 13:18:05
5
這是我個人的 「規則」:
- 文件只PHP代碼:永遠不會結束標籤
- 文件用PHP用別的東西(即HTML)混合:始終結束標記
相關問題
- 1. PHP關閉標記不必要?
- 2. 是否需要關閉ADO記錄集?
- 3. PHP包括和關閉標記
- 4. 關閉DOMDocument中的標記(XML PHP)
- 5. 您是否需要關閉HTML中的元標記和鏈接標記?
- 6. 我需要關閉它的CSS DIV標記填充
- 7. 哪些版本的IE需要基本標記關閉bugfix?
- 8. 安卓:我們需要關閉遊標
- 9. 管道關閉不需要關閉
- 10. 在VS代碼中關閉HTML標記時再次需要手動縮進
- 11. 關閉PHP錯誤中的html標記
- 12. jQuery - toggleClass()需要刷新時關閉
- 13. Java ExecutorService關閉現在需要時代
- 14. 是否需要關鍵字元標記?
- 15. 何時關閉bbdd並關閉光標?
- 16. 需要多久Tomcat關閉?
- 17. OpenGL ES需要「關閉」嗎?
- 18. 我需要Javascript關閉嗎?
- 19. 需要關閉會話
- 20. 我需要關閉流嗎?
- 21. Groovy XmlParser - >需要關閉?
- 22. 我需要關閉IAsyncOperation嗎?
- 23. PHP代碼關閉未封閉的錨標記
- 24. replaceWith自動關閉標記
- 25. jQuery的outerHTML關閉標記
- 26. 需要關於PHP
- 27. 是否需要關閉HttpWebRequest?如何
- 28. 關閉不全href標記
- 29. 腳本標記不關閉
- 30. PHP如何檢查MySQLi查詢是否需要關閉?
謝謝,但超越? – Graviton 2009-05-04 09:00:22
除此之外?決不。 – alexn 2009-05-04 09:02:10