2016-08-22 43 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