#php Gdzie w tej chorej oficjalnej dokumentacji mogę poczytać o "public function somename: static" i chodzi mi o te static. Za Chiny ludowe nie mogę tego znaleść...
@massejferguson: chyba raczej public static function somename() Metoda statyczna jest dostępna na przykład przez daną klasę, metoda nie ma dostępu do $this wewnątrz, przeważnie mają funkcję pomocniczą (jakieś utlity function), mogą korzystać ze zmiennych statycznych, albo innych metod w tej samej klasie, które również są statyczne
chyba, że chodzi ci o typ zwracany, to w takim razie, to nic więcej jak informacja, że metoda zwraca instancje tej samej klasy,
@Serghio: chodzi mi o"public function somename: static" I zamiast static moze by void, string, int I chodzi mi o wyjasnienie w dokumentacji tego static. Bo kazde inner ai tłumaczy inaczej i chciałbym zapoznać się z oficjalną dokumentacja
W tym przypadku chodzi o late static binding. Faktycznie ciężko o przykład z użyciem jako return type, ale powinieneś zrozumieć jak i tym poczytasz. Możesz też pogooglać "self vs static"
Gdzie w tej chorej oficjalnej dokumentacji mogę poczytać o "public function somename: static" i chodzi mi o te static. Za Chiny ludowe nie mogę tego znaleść...
@massejferguson: chyba raczej
public static function somename()Metoda statyczna jest dostępna na przykład przez daną klasę, metoda nie ma dostępu do $this wewnątrz, przeważnie mają funkcję pomocniczą (jakieś utlity function), mogą korzystać ze zmiennych statycznych, albo innych metod w tej samej klasie, które również są statyczne
chyba, że chodzi ci o typ zwracany, to w takim razie, to nic więcej jak informacja, że metoda zwraca instancje tej samej klasy,
To jest użyte na końcu dokumentu.
https://www.php.net/manual/en/language.oop5.late-static-bindings.php
przy
staticzwracasz instancje tej samej klasy, z której została wywoływanaunverifiedw tym przykładzie zwróciUserFactory, z tym, że w metodzie zawarta jest logika, która nadpisze wartośćemail_verified_atstaticTamten
staticna końcu to jest deklaracja jaki typ danych zwraca funkcja.Jakby było
function foo(): intto by oznaczało, że funkcjafoozwraca wartość typuint