2016-08-22 46 views
-2

應該在dieexit函數之後關閉PHP標籤嗎?或者它不是必需的?退出或模具功能後關閉PHP標籤

+1

我以前讀過它。它不是重複的,因爲我關於'die'和'exit'函數的不同問題。 – Luke

+0

這些特定的語言結構沒有區別。 –

+1

@Luke它是重複的。特定的語言結構沒有區別。答案是一樣的。 –

回答

0

根據the docs,僅省略結束標籤,如果它是在文件的結尾:如果一個文件是純PHP代碼

,優選在的端部省略PHP結束標記文件。這可以防止在PHP結束標記後添加意外空白或新行,這可能會導致不必要的影響,因爲當程序員無意在腳本中的該位置發送任何輸出時,PHP將開始輸出緩衝。

- http://php.net/manual/en/language.basic-syntax.phptags.php

這適用於exitdie電話也是如此。他們會像其他的php代碼一樣運行相同的解析器。

+0

爲什麼不把它發佈在規範的重複目標上? –

+0

我發現我的答案之前,看到一個dup已被確定。令人驚訝的是,我沒有看到任何關於該問題的答案中引用的官方php文檔,包括那些有數百個upvotes的文檔。我也會在那裏添加我的答案。謝謝你的提示! – Asaph

+0

雖然兩次發佈相同的答案,但它引發了一個自動版主標誌。 –

1

即使腳本可能會在某處中途退出,您仍然需要確保PHP在語法上是有效的。

例如這是行不通的:

<?php 
if (true) { 
    die(); 
} 
<html> 

不會有效,因爲PHP解析器將BARF上<html> - 你仍然在PHP模式,<html>是無效的PHP代碼。

腳本執行永遠不會到達標記,因此從理論上講,沒有?>也沒關係,但解析器不檢查是否有邏輯可達,它只檢查原始語法。

+0

我想這個問題是關於用'?>'關閉'<?php'標記,而不是關閉HTML標記。 – Barmar