Ankündigung

Einklappen
Keine Ankündigung bisher.

Wert an Public const variable übergeben

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wert an Public const variable übergeben

    Hallo, ich hoffe um Hilfe:

    Ich habe ein Skript in ein anderes Skript integriert. Das funktioniert auch, aber das zweite Skript nutzt classes mit denen ich mich nicht so richtig auskenne.

    An einer Stelle heisst es:

    public const PUBLIC_CONST_B = 2;

    Ich möchte, dass die Variable PUBLIC_CONST_B ein Wert über eine andere Variable übergeben wird. Also:

    Include ("variable.inc"); // hier ist $wert definiert
    public const PUBLIC_CONST_B = $wert;

    Das funktioniert leider nicht. Gibt es eine Möglichkeit, dass hinzubekommen?

    Ist bestimmt unprofessionell, aber Hauptsache es klappt

    Vielen Dank!!!

  • #2
    Das widerspricht dem Sinn einer Konstante. Eine Konstante ist, wie der Name sagt, konstant und nicht variabel. Und deshalb geht es auch nicht.

    Wenn du das nicht willst, darfst du keine Konstante verwenden.

    Das ist übrigens kein fortgeschrittenes Thema.

    MOD. Verschoben von PHP-Fortgeschrittene

    Kommentar


    • #3
      Danke! Aber anschließend soll sich die Konstante auch nicht mehr ändern. Es handelt sich letztlich um meinen Servernamen. Dieser ist in der config.inc.php gespeichert. Ich möchte den Servernamen nicht mehrmals im Skript definieren, sondern nur einmal. Hoffe, dass ist verständlich.

      Kommentar


      • #4
        Das ist schon klar. Aber eine Variable ist variabel und Klassenkonstante ist konstant. Du kannst einer Klassenkonstante keinen variablen Wert zuweisen, egal was für ein Wert das ist. Ein Servername hat in einer Klassenkonstante auch nichts verloren.

        Siehe PHP-Handbuch:

        Der Wert kann nur ein konstanter Ausdruck sein, keine (zum Beispiel) Variablen, Klassenattribute oder Funktionsaufrufe.
        https://www.php.net/manual/de/langua....constants.php

        Sieht für mich nach einem grundlegenden Konzeptfehler aus, den du lösen solltest, und nicht versuchen irgendwas rein zu hacken.

        Kommentar

        Lädt...
        X