Этот пример включает в себя некоторые из приведенных ниже правил в качестве краткого обзора:
<?php
declare(strict_types=1);
namespace Vendor\\\\Package;
use Vendor\\\\Package\\\\{ClassA as A, ClassB, ClassC as C};
use Vendor\\\\Package\\\\SomeNamespace\\\\ClassD as D;
use function Vendor\\\\Package\\\\{functionA, functionB, functionC};
use const Vendor\\\\Package\\\\{ConstantA, ConstantB, ConstantC};
class Foo extends Bar implements FooInterface
{
public function sampleFunction(int $a, int $b = null): array
{
if ($a === $b) {
bar();
} elseif ($a > $b) {
$foo->bar($arg1);
} else {
BazClass::bar($arg2, $arg3);
}
}
final public static function bar()
{
// Тело метода
}
}
Константы класса ДОЛЖНЫ быть объявлены в верхнем регистре и разделены символом подчёркивания. Например:
<?php
namespace Vendor\\\\Model;
class Foo
{
const VERSION = '1.0';
const DATE_APPROVED = '2012-06-01';
}
Имена классов ДОЛЖНЫ быть объявлены в StudlyCaps
.
Имена методов ДОЛЖНЫ быть объявлены в camelCase().
Все файлы PHP ДОЛЖНЫ заканчиваться переносом строки.
Если в файле только PHP код, закрывающий тег ?>
НЕ ДОЛЖЕН использоваться.
Строки НЕ ДОЛЖНЫ быть длиннее 80 символов. Длинные строки ДОЛЖНЫ быть разбиты на несколько строк, длиной не более 80 символов.
В коде ДОЛЖЕН использоваться отступ в 4 пробела для каждого уровня отступа. Для отступа НЕ ДОЛЖНА использоваться табуляция.
Все зарезервированные в PHP [ключевые слова][keywords] и [типы][types] ДОЛЖНЫ быть в нижнем регистре.
Любые новые типы и ключевые слова, добавленные в будущих версиях PHP, ДОЛЖНЫ быть в нижнем регистре.