spacing.bracketfixable
Ensure that square brackets []
have consistent spacing
Examples
- Examples of correct code for this rule using default options
Arrays and offset lookup
php
<?php
$empty_array = [];
$array = [1, 2, 3];
$string_array = ['foo', 'bar', 'baz'];
$associative_array = ['foo' => 'bar', 'baz' => 'qux'];
$nested_array = ['foo' => ['bar' => 'baz']];
$array_of_arrays = ['single', ['foo' => 'bar'], 'middle', ['baz' => 'qux']];
$nested_array_of_arrays = ['foo' => ['bar' => ['baz' => 'qux']]];
$value_1 = $array[0];
$value_2 = $string_array[1];
class Test extends Testing {
function construct($info)
{
$this->data['test']= $info['test'];
$this->data['foo'] = $info['foo'];
$this->data['bar'] = $info['bar'];
$this->data['baz']['nested'] = $test;
$this->data['baz']['nested']= $info['baz']['nested'];
$this->data['baz']['nested'][] = $info['baz']['nested']['foo'];
parent::__construct(['a' => 1, 'b' => 2]);
}
}
// Correct because it is handled by `spacing.assignment` rule.
$foo['bar']= 'baz';
$foo['bar'] ='baz';
// Correct because it is handled by `spacing.accessor` rule.
$foo['bar'] ->baz();
Operators
php
<?php
$add = $array[0] + $array[1];
$subtract = $array[0] - $array[1];
$multiply = $array[0] * $array[1];
$divide = $array[0] / $array[1];
$modulus = $array[0] % $array[1];
$concatenate = $array[0] . $array[1];
$exponentiate = $array[0] ** $array[1];
$bitwise_and = $array[0] & $array[1];
$bitwise_or = $array[0] | $array[1];
$bitwise_xor = $array[0] ^ $array[1];
$bitwise_shift_left = $array[0] << $array[1];
$bitwise_shift_right = $array[0] >> $array[1];
$smaller = $array[0] < $array[1];
$smaller_or_equal = $array[0] <= $array[1];
$greater = $array[0] > $array[1];
$greater_or_equal = $array[0] >= $array[1];
$equal = $array[0] == $array[1];
$identical = $array[0] === $array[1];
$not_equal = $array[0] != $array[1];
$not_identical = $array[0] !== $array[1];
$or = $array[0] || $array[1];
$and = $array[0] && $array[1];
$ternary = $array[0] ? $array[1] : $array[2];
$null_coalesce = $array[0] ?? $array[1];
Route parameters
php
<?php
// Correct because it is handled by `psr/indent` rule since it is on a separate line.
Route::middleware(['auth'])->get('/user',
[UserController::class, 'index']
);
[UserController::class, ['test'=> 'hello']];
- Examples of incorrect code for this rule using default options
Arrays and offset lookup
php
<?php
$empty_array = [ ];
$array = [ 1, 2, 3 ] ;
$string_array = [ 'foo', 'bar', 'baz'];
$associative_array = [ 'foo' => 'bar', 'baz' => 'qux'];
$nested_array = [ 'foo' => [ 'bar' => 'baz' ]];
$array_of_arrays = ['single', [ 'foo' => 'bar'], 'middle', [ 'baz' => 'qux']];
$nested_array_of_arrays = ['foo' => [ 'bar' => [ 'baz' => 'qux']]];
$nested_array_of_arrays = [ ['one' ], [ 'two', 'three' ], [ 'four', 'five', 'six' ] ];
$value_1 = $array [ 0 ];
$value_2 = $string_array[ 1];
class Test extends Testing {
function construct($info)
{
$this->data[ 'test'] = $info[ 'test'];
$this->data ['foo'] = $info[ 'foo'];
$this->data ['bar' ] = $info[ 'bar'];
$this->data [ 'baz' ] ['nested'] = $test;
$this->data[ 'baz']['nested']= $info['baz'] ['nested'];
$this->data ['baz' ][ 'nested'][ ] = $info [ 'baz'] ['nested' ] [ 'foo'];
parent::__construct( [ 'a' => 1, 'b' => 2 ]);
}
}
Operators
php
<?php
$add = $array[0]+$array[1];
$subtract = $array[0] -$array[1];
$multiply = $array[0]*$array[1];
$divide = $array[0] /$array[1];
$modulus = $array[0]% $array[1];
$concatenate = $array[0].$array[1];
$exponentiate = $array[0] **$array[1];
$bitwise_and = $array[0]&$array[1];
$bitwise_or = $array[0]|$array[1];
$bitwise_xor = $array[0] ^$array[1];
$bitwise_shift_left = $array[0]<<$array[1];
$bitwise_shift_right = $array[0] >>$array[1];
$smaller = $array[0]<$array[1];
$smaller_or_equal = $array[0]<=$array[1];
$greater = $array[0]>$array[1];
$greater_or_equal = $array[0] >=$array[1];
$equal = $array[0]== $array[1];
$identical = $array[0]=== $array[1];
$not_equal = $array[0]!=$array[1];
$not_identical = $array[0] !== $array[1];
$or = $array[0] ||$array[1];
$and = $array[0]&& $array[1];
$ternary = $array[0]?$array[1]: $array[2];
$null_coalesce = $array[0]?? $array[1];
Route parameters
php
<?php
Route::middleware( ['auth'] )->get('/user',
[UserController::class, 'index']
);
[UserController::class,['test'=> 'hello'] ];