Verkettung von Methoden für neu erstellte Objekte in PHP
In PHP ist die Verkettung von Methoden für neu erstellte Objekte durch verschiedene Techniken möglich.
PHP 5.4:
In PHP-Versionen 5.4 und höher können Sie Methoden mithilfe von Klammern direkt aus der Objektinstanziierung heraus verketten:
(new Foo())->xyz();
PHP 5.3 und früher:
In früheren Versionen von PHP können Sie Methoden während der Objektinstanziierung nicht verketten. Sie können jedoch eine Problemumgehung verwenden, indem Sie die Instanziierung in eine statische Methode einschließen:
class Foo { public function xyz() { return $this; } static public function instantiate() { return new self(); } } $a = Foo::instantiate()->xyz();
Unterschied zwischen Verkettungsmethoden:
Vor PHP 5.4, wenn Sie verwenden new Classname(); können Sie Methoden nicht direkt aus der Instanziierung heraus verketten. Diese Einschränkung ist auf die Syntax von PHP 5.3 zurückzuführen. Sobald ein Objekt instanziiert ist, können Sie Methoden frei verketten.
Auswahl der richtigen Methode:
Die PHP 5.4-Methode zum Verketten von Methoden direkt aus der Instanziierung wird aus diesem Grund bevorzugt seine Einfachheit und Eleganz. Wenn Sie PHP 5.3 oder früher unterstützen müssen, ist die statische Instanziierungsmethode eine geeignete Problemumgehung.
Das obige ist der detaillierte Inhalt vonWann ist Methodenverkettung für neu erstellte Objekte in PHP möglich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!