У меня есть собственный набор правил, определенный в XML.
Я привык нажимать tab
после каждого =>
, так что, если мой массив многострочный, все будет хорошо выравниваться. Это стало привычкой, и я также использую это для однострочных массивов. Поэтому многострочный массив может выглядеть так
$array = array(
'something' => array(
'short' => 1,
'longer' => 1,
),
);
Проблема в том, что PHP CodeSniffer жалуется, что между =>
и значением более 1 пробела (поскольку я всегда нажимаю tab
, в большинстве случаев будет более одного пробела - конечно, в зависимости от длины строки, поэтому далеко, это может быть и один пробел иногда)
Я попытался добавить токен T_ARRAY
в определение правила Generic.WhiteSpace.ScopeIndent
, но это не помогло.
<rule ref="Generic.WhiteSpace.ScopeIndent">
<properties>
<property name="indent" value="4"/>
<property name="ignoreIndentationTokens" type="array" value="T_COMMENT,T_DOC_COMMENT_OPEN_TAG,T_ARRAY"/>
</properties>
</rule>
Есть ли решение для этого?
ОБНОВЛЕНИЕ
Хорошо, я понял, что Generic.WhiteSpace.ScopeIndent
не имеет к этому никакого отношения, потому что Squiz.WhiteSpace.OperatorSpacing
применяет это правило. Теперь, согласно документации, я не могу настроить это свойство, чтобы исключить оператор =>
. Есть ли другой способ сделать это?