Eine
Konstante
ist
ein
Bezeichner
(
Name
)
für
eine
simple
Variable
.
Wie
der
Name
schon
ausdrückt
,
kann
sich
der
Wert
einer
Konstanten
zur
Laufzeit
eines
Skripts
nicht
ändern
(
eine
Ausnahme
bilden
die
Magischen
Konstanten
,
die
aber
tatsächlich
keine
Konstanten
sind
.
)
Eine
Konstante
unterscheidet
zwischen
Groß
-
und
KLeinschreinbung
(case-sensitive
)
.
Nach
gängiger
Konvention
werden
Konstanten
immer
in
Großbuchstaben
geschrieben
.
Der
Name
einer
Konstanten
folgt
den
gleichen
Regeln
wie
alle
anderen
Bezeichner
in
PHP
.
Ein
gültiger
Name
beginnt
mit
einem
Buchstaben
oder
einem
Unterstrich
,
gefolgt
von
beliebig
vielen
Buchstaben
,
Nummern
oder
Understrichen
.
Als
regulärer
Ausdruck
geschrieben
:
[
a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff
]*
Anmerkung
:
Für
unsere
Zwecke
ist
ein
Buchstabe
a-z
,
A-Z
und
die
ASCII-Zeichen
von
127
bis
255
(
0x7f-0xff
)
.
Der
Gültigkeitsbereich
einer
Konstanten
ist
global
-
-
Sie
können
unabhängig
vom
Gültigkeitsbereich
überall
auf
eine
Konstante
zugreifen
.
Syntax
Eine
Konstante
können
Sie
über
die
Funktion
define(
)
Eine
Konstante
können
Sie
über
die
Funktion
define(
)
definieren
.
Einmal
definiert
,
kann
eine
Konstane
weder
verändert
noch
gelöscht
werden
.
Konstanten
können
nur
scalare
Daten
(
boolean
,
integer
,
float
und
string
)
enthalten
.
Den
Wert
einer
Konstanten
erhalten
Sie
ganz
einfach
durch
die
Angabe
ihres
Namens
.
Einer
Konstanten
sollten
Sie
nicht
,wie
bei
Variablen
,
ein
$
voranstellen
.
Ebenso
können
Sie
die
Funktion
constant(
)
benutzen
um
den
Wert
einer
Konstanten
auszulesen
,
wenn
Sie
den
Namen
der
Konstanten
dynamisch
erhalten
wollen
.
Benutzen
Sie
get_defined_constants(
)
um
eine
Liste
aller
definierten
Konstanten
zu
erhalten
.
Anmerkung
:
Konstanten
und
(
globale
)
Variablen
befinden
sich
in
unterschiedlichen
Namensräumen
.
Das
hat
zum
Beispiel
zur
Folge
,
dass
TRUE
und
$TRUE
grundsätzlich
unterschiedlich
sind
.
Falls
Sie
eine
undefinierte
Konstante
verwenden
,
nimmt
PHP
an
,
dass
Sie
den
Namen
der
Konstanten
selber
meinen
.
Wenn
das
passiert
wird
eine
Notice
ausgegeben
.
Benutzen
Sie
die
Funktion
defined(
)
um
herauszufinden
,
ob
eine
Konstante
definiert
ist
.
Das
hier
sind
die
Unterschiede
zwischen
Konstanten
und
Variablen
:
-
Konstanten
haben
kein
Dollarzeichen
(
$
)
vorangestellt
;
-
Konstanten
können
nur
über
die
Funktion
define(
)
definiert
werden
,
nicht
durch
einfache
Zuweisung
;
-
Konstanten
können
überall
definiert
werden
und
auf
Ihren
Wert
können
Sie
ohne
Rücksicht
auf
Namensraumregeln
von
Variablen
zugreifen
;
-
Sobald
Konstanten
definiert
sind
,
können
sie
nicht
neu
definiert
oder
gelöscht
werden
;
und
-
Konstanten
können
nur
skalare
Werte
haben
.
Beispiel
9-1
.
Definiton
von
Konstanten
?php
define(
"CONSTANT"
,
"Hallo
Welt
.")
;
echo
CONSTANT
;
/
/
Ausgabe
:
"Hallo
Welt
.
"
echo
Constant
;
/
/
Ausgabe
:
"Constant
"
und
eine
Notice
.
?
|
|