PHP:PSR-2:为什么命名空间/使用声明后的空白行?

时间:2014-12-04 01:58:11

标签: php coding-style standards psr-2

所以我前几天正在审查PSR编码标准(我正式遵循),并且我总是理解所有事情的原因,并且大部分都是按照过去10年来我所做的一切编写的。在我的大学时代,非常类似的标准被强加给了我 - 它只是卡住了。

但是,我对PSR-2标准中的这一说明感到疑惑:

  

命名空间声明后必须有一个空行,并且在使用声明块之后必须有一个空行。

这是为什么?我不反对它,但我确定有某种背景或历史可以解释,它从来没有真正跳到我身边。我想明显的原因是易读性,但我觉得这个标准有更深层次的原因。

虽然我在这里 - 有没有人知道有什么好的资源来解释所有PSR指南背后的逻辑?在试图说服别人跟随他们时,有一个官方的推理和历史导致了具体的标准是有用的,他们可能不相信它符合他们的最佳利益。

2 个答案:

答案 0 :(得分:7)

嗯,看起来好些什么?这样:

namespace Foo;
use Bar\Baz;
use Bar\Qux;
function test()
{
}

或者这个:

namespace Foo;

use Bar\Baz;
use Bar\Qux;

function test()
{
}

我认为它说明了一切。

答案 1 :(得分:1)

我认为您将获得的最佳资源是PHP-FIG邮件列表,特别是Google网上论坛中的存档。以下是与您的问题相关的一些有趣讨论:

我个人的回忆是,标准是PEAR2,PHPCS,Doctrine1和Flow3风格的混合体。但所有这些都是在5年前,我有forgotten all about it