::
, der Bereichsauflösungsoperator , wird zum Verweisen auf statische Elemente verwendet und Konstanten einer Klasse. Es wird auch verwendet, um den Konstruktor einer Superklasse zu referenzieren. Hier ist ein Code, der verschiedene Verwendungen des Scope-Auflösungsoperators veranschaulicht:
Ein kleines Quiz: Der Operator für die Bereichsauflösung wird auch "paamayim nekudotayim" genannt, was im Hebräischen "zwei Punkte zweimal" bedeutet.
&
im Kontext Ihres Beispiels macht nichts Sinnvolles, wenn Sie PHP 5 oder höher verwenden und entfernt werden sollten. In PHP 4 war dies notwendig, um sicherzustellen, dass eine Kopie des zurückgegebenen Objekts nicht verwendet wurde. In PHP 5 werden keine Objektkopien erstellt, außer clone wird aufgerufen. Und so &
wird nicht benötigt. Es gibt noch einen Fall, in dem &
in PHP 5 noch nützlich ist: Wenn Sie über die Elemente eines Arrays iterieren und die Werte ändern, müssen Sie den Operator &
verwenden, um die Elemente des Arrays zu beeinflussen.
Sie können damit statische Methoden einer Klasse referenzieren, ohne sie instanziieren zu müssen.
Zum Beispiel:
%Vor% Hier könnten Sie myClass::staticFunction()
außerhalb der Klasse verwenden, aber Sie müssten ein neues myClass-Objekt erstellen, bevor Sie otherFunction()
auf die gleiche Weise verwenden.
::
ist der Bereichsoperator in PHP, C ++, aber nicht in Java. In diesem Fall wird eine statische Methode einer Klasse aufgerufen. Eine statische Methode ist eine Methode, die von außerhalb der Klasse aufgerufen werden kann, auch wenn Sie keine Instanz haben.
&
zeigt an, dass eine Kopie der zurückgegebenen Funktion nicht übernommen wird, sondern der Verweis auf das zurückgegebene Objekt verwendet wird. In diesem Fall scheinen sie Singleton-Objekte zurückzugeben, die in der Anwendung verwendet werden, z. mit der Datenbank zu verbinden (im zweiten Fall)
Tags und Links php