Inspectopedia Help

Type compatibility

'null' is not compatible with parameter's declared type  

Reports the variables that are initialised via passing them by reference to a parameter incompatible with null.

Arithmetic operation with unsupported operands  

Reports arithmetic and bitwise expressions with unsupported operands.

Array offset access on illegal type  

Reports the array offset access expressions that are used on illegal types.

Class constant type is missing  

In PHP 8.3 and later, reports a class constant that is missing a type declaration.

Illegal array key type  

Reports the array keys that are of illegal type, such as objects or arrays.

Illegal string offset  

Reports the usages of non-integer offsets in string access expressions such as $str[42].

Incompatible return type  

Reports the return statements whose return value type is not compatible with the one declared for a function/method.

Invalid argument supplied for 'foreach()'  

Reports the foreach constructs used on variables of the string, float, int, or boolean type.

Missing parameter's type declaration  

Reports the parameters that have no type declaration specified.

Missing property's type declaration  

Reports the properties that have no type declaration.

Missing return type declaration  

Reports the functions that have no return type declaration specified.

Missing strict types declaration  

Detects the missing declare(strict_types=1) directive in the file.

Parameter type  

Reports the parameters passed to a function call, whose types do not match the ones specified in the function definition via type declaration or the PHPDoc @param tag.

Redundant intersection type  

Reports the intersection type declarations that contain redundant types, for example, an intersection type that contains both the parent class and its subclass.

Strict type checking rules violation  

Reports violations of the strict type checking rules.

Type declaration is redundant and could be simplified  

Reports union type declarations that contain redundant types, for example, a union type that contains both the class alias and the original class.

Type mismatch in property assignment  

Reports type violations in properties assignments.

Last modified: 18 June 2024