1.2.800. New Without Parenthesis

In PHP 8.4, it is possible to reach a property or call a method right on the new call, without putting the new inside parenthesis.

This syntax is not backward compatible.

<?php

echo new X()->property;

echo new X()->method();

?>

1.2.800.1. Specs

Short name

Php/NewWithoutParenthesis

Rulesets

All, Appinfo, CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, CompatibilityPHP73, CompatibilityPHP74, CompatibilityPHP80, CompatibilityPHP81, CompatibilityPHP82, CompatibilityPHP83

Exakat since

2.6.8

Severity

Minor

Time To Fix

Quick (30 mins)

Precision

Very high

Available in

Entreprise Edition, Exakat Cloud