我有一个简单的问题。我正在学习 php,我意识到用 ';' 结束一个函数 如果任何其他函数或查询不存在,则不需要。但我想知道,在示例中的 html 标签中使用 php 时,不结束函数会导致任何性能和安全问题吗?
<?php foreach( $cars as $car ):?>
<option><?php echo $car ?></option>
<?php endforeach ?>
谢谢你。
我有一个简单的问题。我正在学习 php,我意识到用 ';' 结束一个函数 如果任何其他函数或查询不存在,则不需要。但我想知道,在示例中的 html 标签中使用 php 时,不结束函数会导致任何性能和安全问题吗?
<?php foreach( $cars as $car ):?>
<option><?php echo $car ?></option>
<?php endforeach ?>
谢谢你。
在 php 中,在 php 代码以 结尾时?>
,无需给出 ; 或者你可以给。这是可选的,不会导致任何性能和安全问题。但作为一个好习惯,你不应该留下分号。
就 PHP 而言,这两个代码块之间完全没有区别。如果在?>
.
唯一的区别是开发人员。最佳做法是始终包含分号。这样做的原因不是因为 PHP 有什么不同,而是因为它使开发人员更容易使用代码。
出于同样的原因,最好始终将{}
大括号放在一个块周围,即使它只有一行(大括号不是严格要求的)。因为它使您的代码更易于使用。
所以,总结一下:
<?php echo $car ?>
和之间的区别<?php echo $car; ?>
:
无。PHP 认为它们是相同的。
安全问题:
无。看上面。(担心安全是好事,但你需要了解真正的安全隐患是什么,而不是猜测)
性能问题:
无。看上面。(但是,无论如何我都不会担心;您有成为过早优化受害者的危险)。
那么为什么要包含分号呢?
因为它使您作为编码员的生活更轻松。
现在任何一行代码都不需要分号。它也不会导致任何性能或安全问题。
有关标准是什么的更多信息,请在此处查看图(框架互操作组)模型 PSR-1 和 PSR-2:github.com/php-fig/fig-standards
正如其他人所说,在这种情况下,您不必使用;
after your 。endofreach
不过考虑一下!
当您向该脚本添加一些新代码时,假设 6 个月后您忘记检查代码以查看您现在是否需要在该 foreach 上添加分号,您将遇到脚本问题,什么都没有与您的新代码有关,但这将是您的外观,因为这就是您所做的一切!
如果您总是添加结束的分号终止符,这将永远不会成为问题。
着眼于未来的编码。