Heim > Artikel > Backend-Entwicklung > Warum können PHP-Konstanten als Ausdrücke definiert werden, deren Werte sich ändern?
Im offiziellen PHP-Handbuch heißt es: „Sobald eine Konstante definiert ist, kann sie weder geändert noch undefiniert werden.“
Aber warum kann eine solche Wertänderung im Programm definiert werden?
<code>define("MESSAGE", time()); //输出常量 echo MESSAGE;</code>
Im offiziellen PHP-Handbuch heißt es: „Sobald eine Konstante definiert ist, kann sie weder geändert noch undefiniert werden.“
Aber warum kann diese Wertänderung im Programm definiert werden?
<code>define("MESSAGE", time()); //输出常量 echo MESSAGE;</code>
Grammatisch gesehen ist daran nichts auszusetzen. Die im Handbuch erwähnten Änderungen betonen die späteren künstlichen Änderungen, einschließlich der Löschung.
Die NACHRICHT, die Sie hier ausdrücken möchten, ist variabel, was als Ergebnis davon verstanden werden kann, dass PHP selbst während des Betriebs time() im Speicher findet.
Ich vermute, das hat etwas mit funktionaler Programmierung zu tun. Die Funktion time() kann einer Konstante zugewiesen werden. Der Zugriff auf die Konstante entspricht dem Zugriff auf die Funktion time(), und der Rückgabewert der Funktion time() ändert sich ständig.
Sobald eine Konstante definiert ist, kann sie weder geändert noch undefiniert werden
Dann können Sie versuchen, NACHRICHT zu ändern,
Zum Beispiel MESSAGE = 1;
Es fühlt sich an, als würde dadurch eine Verbindung zur Funktion time() hergestellt!