Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
primogenial
/
wp-content
/
themes
/
storefront
/
vendor
/
squizlabs
/
php_codesniffer
/
src
/
Standards
/
PSR12
/
Tests
/
Functions
:
NullableTypeDeclarationUnitTest.inc.fixed
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php class MyClass { public function validNullableTypeHinting( ?array $array = null, ?MyObject $object ): ?MyObject { } public function validWithFQN( ?\MyNameSpace\MyArray $array = null, ?\MyNameSpace\MyObject $object ): ?\MyNameSpace\MyObject { } public function validReturnTypeForThisSniff():?MyObject { } public function invalidTooMuchWhitespace( ?array $array = null, ?MyObject ):?MyObject { } public function invalidWithFQNTooMuchWhitespace( ?\MyNameSpace\MyArray $array = null, ?\MyNameSpace\MyObject ):?\MyNameSpace\MyObject { } } // valid in lambda array_map(function(?int $integer = null): ?int { return $integer; }, []); // invalid in lambda array_map(function(?int $integer = null): ?int { return $integer; }, []); interface MyInterface { public function invalidTypeHintsWithNewlinesAndComments( ?string $varA, ? /* a comment, fixing is undesirable */ array $varB, ? // phpcs:ignore Standard.Cat.Sniff -- fixing is undesirable int $varC ) ?bool; } function testSelf( ?self $self ) : ?self {} function testParent( ?parent $parent ) : ?parent {} function testCallable( ?callable $callable ) : ?callable {} // Issue #2552. class TestTokenizingOfNullableVsInlineThen { public function testStatic() { $test = Something::one(self::CONSTANT) ?: ''; $test = Something::one(static::CONSTANT) ?: ''; } } // Issue #2641. $foo = new static( is_null($a) ? foo($a) : $a, is_null($b) ? $b : $c ); // Issue #2791. class testInstanceOf() { function testIt() { $foo = $value instanceof static ? '(' . $value . ')' : $value; $bar = $value instanceof static ? function_call($value) : $value; $baz = $value instanceof static ? array($value) : $value; $bal = $value instanceof static ? \className::$property : $value; $bal = $value instanceof static ? CONSTANT_NAME : $value; } } // PHP 8.0: static return type. function testStatic() : ?static {}