<?phpfunction sayHello(string $name): never{ echo "Hello, $name"; exit(); // if we comment this line, php throws fatal error}sayHello("John"); // result: "Hello, John"
never é um tipo de retorno que indica que a função não termina. Isso significa que a função chama exit(), lança uma exceção ou é um loop infinito. Portanto, não pode fazer parte de uma declaração de tipo de união. Disponível a partir do PHP 8.1.0.
never é, na linguagem da teoria dos tipos, o tipo inferior. O que significa que é o subtipo de todos os outros tipos e pode substituir qualquer outro tipo de retorno durante a herança.
<?phpfunction sayHello(string $name): never{ echo "Hello, $name"; exit(); // if we comment this line, php throws fatal error}sayHello("John"); // result: "Hello, John"
I think the description should be corrected from return-only to non-return function since the context is now misleading