Meinung: Konstanten

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

  • Meinung: Konstanten

    Hi zusammen!

    bin gerade dabei mein Internetdir aufzuräumen. Dabei stößt man zwangsläufig auf ein paar ältere Scripte.

    Eins davon ist von nem Kollegen, der in seinem Script auch mit Konstanten (also mit define()) arbeitet. Ich hab das noch nie gemacht. Bin mit Arrays, etc bestens ausgekommen.

    Jetzt wollte ich mal wissen. Macht es Sinn, Konstanten zu verwenden? Das ist doch bestimmt langsamer, oder? Und unübersichtlich ist es auch.

  • #2
    Kommt drauf an...

    Was die Geschwindigkeit angeht, kann ich dir nix zu sagen, aber wenn man es gescheit anstellt, ist es nicht unübersichtlicher.

    Wenn es sich um Werte handelt, die wiederholt vorkommen, macht es ja prinzipiell Sinn den Wert einmal hinzuschreiben und die damit initialisierte Variable/Konstante einfach überall wo nötig einzusetzen.
    So muss ich ja nur an einer Stelle was ändernund nicht überall in allen möglichen Skripten.

    Ich denke ne Konstante hat hier gegenüber einer Variablen den Vorteil, dass ich nicht das $ am Anfang verwenden muss und so sofort sehe, dass es keine Variable is, ich den Wert also nicht ändern kann.
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      bisher habe ich auch noch nicht mit konstanten gearbeitet. mache es quasi genau wie du. arrays und normale vars erfüllen ihren zweck genauso.

      aber wie auch happy sagt, macht es sinn eine const zu definieren, die man überall verwenden kann. da sich der wert nach einer definition nicht mehr ändern lässt, wenn ich mich nicht irre, ist es sauberer als eine var. schliesslich kann man eine var noch beeinflussen und erhöht evtl. auch den schwierigkeitsgrad bei der fehlersuche.
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        wenn man sicher gehen will, das der Wert einer bestimmten Variable nicht geändert werden darf, sollte man Konstanten nehmen.
        zB. die Daten für die Datenbankanbindung

        ich nehme für alles andere immer ein Array $conf, wo ich all mein Zeug drin ablege.
        TBT

        Die zwei wichtigsten Regeln für eine berufliche Karriere:
        1. Verrate niemals alles was du weißt!


        PHP 2 AllPatrizier II Browsergame

        Kommentar


        • #5
          Ein weiterer Vorteil von Konstanten wurde bisher nicht erwähnt:
          Braucht man den Wert in einer Funktion, kann man sich dort das Einbinden per global oder $GLOBALS sparen.

          Außerdem ist es ganz sinnvoll, konstante Parameter am Anfang des Skripts zu definieren; so muss man bei einer Änderung nicht das ganze Skript durchforsten - auch wenn der Wert nur einmal benutzt wird.

          Obendrein sind Konstanten in PHP ja nicht 100%ig konstant, denn man kann den Wert anhand eines von Skript-Parametern bestimmen.
          mein Sport: mein Frühstück: meine Arbeit:

          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

          Kommentar


          • #6
            Ich verwende immer Konstanten wenn es angebracht ist, das heisst bei Konstanten Werten oder Werten die während einer kompletten session benutzt werden und das System steuern (keine Textelemente).

            Optische Vorteile sind schon erwähnt, etc.

            Im Übrigen können Konstante Parameter ein System sicherer machen gegen zB Verformung von aussen als variable.
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              Sehr aufschlussreich. Danke euch!!!

              Muss noch mal Nachfragen:
              Obendrein sind Konstanten in PHP ja nicht 100%ig konstant, denn man kann den Wert anhand eines von Skript-Parametern bestimmen.
              Was heißt das genau?

              Kommentar


              • #8
                PHP-Code:
                // echte konstante.
                define ("KONSTANTE""Hallo Welt.");

                // nicht so echte konstante
                define ("KONSTANTE"$uebergabevariable_kann_dynamisch_sein); 
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  Achso, danke!

                  Kommentar

                  Lädt...
                  X