Pola i metody statyczne klas w PHP

Autor podstrony: Krzysztof Zajączkowski

Stronę tą wyświetlono już: 2545 razy

Zarówno pola jaki i metody klas w PHP mogą być statyczne za sprawą użycia słowa kluczowego static. Metody i pola statyczne wyróżniają się tym, że można się do nich odwoływać bez konieczności tworzenia obiektu klasy. Oto prosty przykład:

<?php class myMath{ public static $last_angle = 0; // pole statyczne klasy public static function degreesToRadians($angle_in_degrees){ // statyczna metoda klasy self::$last_angle = pi() / 180. * $angle_in_degrees; // przypisanie polu statycznemu klasy wartości return self::$last_angle; } const PHI = 1.6180339887498948482; // stała wewnątrz klasy } $angle = 30; echo("<p>Kąt w stopniach: $angle;"); echo(" kąt w radianach: " . myMath::degreesToRadians($angle) . ";</p>"); // wywołanie metody statycznej echo("<p>Ostatnio przeliczony kąt: " . myMath::$last_angle . ";</p>"); // odwołanie się do pola statycznego klasy (nie obiektu klasy) echo("<p>Stała: " . myMath::PHI . "</p>"); // wywołanie stałej wewnętrznej klasy ?>
Propozycje książek