PHP zapewnia szeroki zakres predefiniowanych stałych każdemu skryptowi, który jest uruchamiany. Wiele z tych stałych jest jednak dostępnych dzieki różnym rozszerzeniom i można z nich korzystać jedynie, kiedy te rozszerzenia sa dostępne przez dynamiczne załadowanie, badź też zostały wkompilowane.
Istnieje siedem magicznych stałych, które zmieniają sie w zależności
od tego, gdzie są użyte. Na przykład, wartość
__LINE__
zależy od linii, w której ta
stała została użyta. Nazwy tych magicznych stałych
są niezależne od wielkości liter:
Nazwa | Opis |
---|---|
__LINE__ |
Aktualna linia pliku. |
__FILE__ |
Pełna scieżka i nazwa pliku. Jeśli użyta wewnątrz dołączonego pliku,
jego nazwa jest zwracana.
Od PHP 4.0.2, __FILE__ zawsze zawiera
bezwzględną scieżkę z rozwiązanymi dowiązaniami symbolicznymi, podczas kiedy w starszych wersjach
czasem zawierała scieżkę względną.
|
__DIR__ |
Nazwa katalogu pliku. Jeśli użyta wewnątrz dołączonego pliku, zwraca nazwę jego katalogu. Odpowiada dirname(__FILE__). Zwracana nazwa nie zawiera końcowego ukośnika, chyba że jest to katalog root. (Dodano w PHP 5.3.0.) |
__FUNCTION__ |
Nazwa funkcji. (Dodano w PHP 4.3.0) W PHP 5 ta stała zwraca nazwę funkcji tak jak ją zadeklarowano (z uwzględnieniem wielkości liter), podczas kiedy w PHP 4 zwracana wartość zawiera jedynie małe litery. |
__CLASS__ |
Nazwa klasy. (Dodano w PHP 4.3.0) W PHP 5 ta stała zwraca nazwę klasy tak jak ją zadeklarowano (z uwzględnieniem wielkości liter), podczas kiedy w PHP 4 zwracana wartość zawiera jedynie małe litery. |
__TRAIT__ |
The trait name. (Added in PHP 5.4.0) As of PHP 5.4 this constant returns the trait as it was declared (case-sensitive). The trait name includes the namespace it was declared in (e.g. Foo\Bar). |
__METHOD__ |
Nazwa metody. (Dodano w PHP 5.0.0) Nazwa metody zwracana jest tak jak ją zadeklarowano (z uwzględnieniem wielkości liter). |
__NAMESPACE__ |
Nazwa aktualnej przestrzeni nazw (z uwzględnieniem wielkości liter). Ta stała definiowana jest w czasie kompilacji (Dodano w PHP 5.3.0). |
Zobacz także get_class(), get_object_vars(), file_exists() i function_exists().