PHP 开始标记和命名空间之间的空格

Whitespace between PHP start tag and namespace

php class 文件中 <?phpnamespace 之间应该有一个 space 吗?

我正在 PSR 指南中查找此信息。 space 后有提示。但是之前呢?

PSR-2-coding-style-guid

PSR-2 其目的是为 PHP 代码提供单一样式指南,从而生成统一格式的共享代码。

  • 代码必须使用 4 个 space 来缩进,而不是制表符。
  • 行长度不得有硬性限制;软限制必须是 120 个字符;行不应超过 80 个字符。
  • 名称space声明后必须有一个空行,使用声明块后必须有一个空行
  • 类 的左大括号必须在下一行,右大括号必须在正文之后的下一行。
  • 方法的左大括号必须在下一行,右大括号必须在主体之后的下一行。
  • 必须在所有属性和方法上声明可见性; abstract 和 final 必须在可见性之前声明;静态必须是 在可见性之后声明
  • 控制结构关键字后面必须有一个space;方法和函数调用不得。
  • 控制结构的左大括号必须在同一行,而右大括号必须在主体之后的下一行。
  • 控制结构的左括号后面不能有 space,控制结构的右括号不能 之前有个space.

基本编码标准 [PSR-2]

*文件

  • 所有 PHP 文件必须使用 Unix LF(换行)行结尾。

  • 所有 PHP 文件必须以一个空行结尾。

  • 必须从仅包含 PHP.

    的文件中省略关闭的 ?> 标记

  • 行长度不得有硬性限制。

  • 行长度的软限制必须是 120 个字符;自动样式检查器必须在软限制处发出警告但绝不能出错。

  • 行不应超过 80 个字符;比这长的行应该被分成多行不超过 每个 80 个字符。

  • 非空行的末尾不得有尾随白色space。

  • 可以添加空行以提高可读性并指示相关代码块。

  • 每行不能超过一个语句。

缩进

  • 代码必须使用 4 space 的缩进,并且不得使用制表符进行缩进。

关键字和True/False/Null

  • PHP 关键字必须小写。 (例如 echo、die、for、throw、catch)
  • PHP 常量 true、false 和 null 必须小写

命名空间和使用声明

  • 如果存在,名称space 声明后必须有一个空行。
  • 如果存在,所有 use 声明必须跟在名称space 声明之后。
  • 每个声明必须有一个 use 关键字。
  • use 块后必须有一个空行。