Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich statische Variablen in PHP richtig initialisieren?

Wie kann ich statische Variablen in PHP richtig initialisieren?

Patricia Arquette
Freigeben: 2024-11-29 03:32:09
Original
517 Leute haben es durchsucht

How Can I Properly Initialize Static Variables in PHP?

Statische Variablen in PHP initialisieren

Beim Initialisieren statischer Variablen können Syntaxfehler auftreten, wie der im angegebenen Codeausschnitt dargestellte. Dies liegt daran, dass PHP komplexe Ausdrücke innerhalb des Variableninitialisierers nicht analysieren kann.

Alternative Initialisierungsmethoden

Um dieses Problem zu beheben, sollten Sie die folgenden alternativen Methoden verwenden:

  • Separate Initialisierung: Definieren Sie Ihre statische Variable wie gewohnt und initialisieren Sie sie dann mit einer separaten Anweisung außerhalb der Klassendefinition.
class Registration {
  static $dates;
}
Registration::$dates = array(
  'start' => mktime(0, 0, 0, 7, 30, 2009),
  'end' => mktime(0, 0, 0, 8, 2, 2009),
  'close' => mktime(23, 59, 59, 7, 20, 2009),
  'early' => mktime(0, 0, 0, 3, 19, 2009),
);
Nach dem Login kopieren
  • Initialisierungsfunktion: Erstellen Sie eine statische Funktion innerhalb der Klasse, um die Initialisierung durchzuführen.
class Registration {
  private static $dates;

  static function init() {
    self::$dates = array(
      'start' => mktime(0, 0, 0, 7, 30, 2009),
      'end' => mktime(0, 0, 0, 8, 2, 2009),
      'close' => mktime(23, 59, 59, 7, 20, 2009),
      'early' => mktime(0, 0, 0, 3, 19, 2009),
    );
  }

  // Call the init function to initialize the variable
  public function __construct() {
    static::init();
  }
}
Nach dem Login kopieren

PHP 5.6-Unterstützung

PHP 5.6 Einführung einer eingeschränkten Unterstützung für nicht triviale Ausdrücke in statischen Variableninitialisierern. Aus Gründen der Übersichtlichkeit und Kompatibilität mit früheren PHP-Versionen wird jedoch empfohlen, die oben genannten Methoden zu verwenden.

Das obige ist der detaillierte Inhalt vonWie kann ich statische Variablen in PHP richtig initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage