Hi Internals I don't have permission to create RFCs but I would like to propose/discuss new language construct called `ifset()` which is syntactic sugar to null coalescing operator with rhs value `null`. The goal of this proposal is similar to Andrea Fauld's proposal ( https://wiki.php.net/rfc/unary_null_coalescing_operator), and the chosen keyword is similar to historical discussion `ifsetor()`. Here's an example.
$result = $a ?? null; vs $result = ifset($a); $result = $a ?? $b ?? $c ?? $d ?? $e ?? null; vs $result = ifset($a, $b, $c, $d, $e); As you can see `ifset()` does not make code much shorter but the main goal of this syntax is expressiveness not shortness. someFunc( $arg1, $arg2, $longVariableName1 ?? $longVariableName2 ?? $longVariableName3 ?? null, $arg4, ); vs someFunc( $arg1, $arg2, ifset( $longVariableName1, $longVariableName2, $longVariableName3, ), $arg4, ); I know that this proposal is highly unlikely to be accepted because it just does same as `??` but in different way and it introduces new keyword (we don't have any new keyword since `yield` in 5.5) and, furthermore, I did search through github and found some projects using `ifset` as function name (https://github.com/search?l=PHP&q=ifset&type=Code). Here's the patch: https://github.com/webdevxp/php-src Cheers