Ankündigung

Einklappen
Keine Ankündigung bisher.

String als Funktion

Einklappen

Neue Werbung 2019

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

  • String als Funktion

    Ich hab in einem meiner Scripte diese Code Zeile
    PHP-Code:
    if(!isset($cm_key) || $cm_key == "no"){die("cancel Application Key Error 1 -> key = ".$cm_key()); } 
    das Error Log des Servers gibt dazu folgendes aus:
    PHP Fatal error: Uncaught Error: Call to undefined function no() in /srv/www/kon17-test-2.applicationhost.de/init/getVariablesAndConfigFromDB.php:47
    Heißt dann wohl dass ein String als Funktion interpretiert wird. Ich kann mir da keinen Reim drauf machen. Weiß da jemand etwas drüber?

  • #2
    PHP-Code:
    $cm_key() 
    ?

    Kommentar


    • #3
      Zitat von jonas3344 Beitrag anzeigen
      PHP-Code:
      $cm_key() 
      ?
      jonas3344 hat es ja bereits gefragt: Ist $cm_key eine Variable oder eine Funktion? Gib mal mehr Info, ist das error_reporting aufgedreht? Was hast du selbst schon debuggt?

      Kommentar


      • #4
        $cm_key enthält den String "no" und da dies dann versucht wird aufzurufen kommt zu Recht der Fehler.
        Ein var_dump von $cm_key wird dies zeigen.

        Kommentar


        • #5
          PHP-Code:
          if(!isset($cm_key) || 
          ?
          Signaturrrrrrr

          Kommentar


          • #6
            Danke an alle. Manchmal sieht man den Wald vor lauter Bäumen nicht. Na klar darf $cm_key nicht mit () enden. Es ist ja nur ein String und keine Funktion. Danke nochmal.

            Kommentar


            • #7
              Auch ohne Klammer () hinter $cm_key macht die Meldung für die() wenig Sinn. Was soll für den Fall wenn $cm_key nicht gesetzt ist bitte ausgegeben werden? (s. schon Hinweis K313 #5).
              Und wenn im 2. Fall $cm_key den String "no" enthält was kann dann noch anderes ausgegeben werden als "no", das dafür eine Variable in die Meldung eingebaut wird?
              Ein fixer Text wäre in meinen Augen hier die bessere Variante.

              Kommentar


              • #8
                Zitat von psygonis Beitrag anzeigen
                Danke an alle. Manchmal sieht man den Wald vor lauter Bäumen nicht. Na klar darf $cm_key nicht mit () enden. Es ist ja nur ein String und keine Funktion. Danke nochmal.
                Ich kann aus der Zeile nicht ersehen ob die Var eine Function ist.
                mir scheint da alles drin sein zu können, wenn diese aber nicht gesetzt ist macht ein callable test auch kein sinn.
                gehört das $cm_key() in den else block ?
                ansonsten #7#5#4#3 wenn ich richig geschaut habe ?

                Kommentar


                • #9
                  Die Variabel enthält entweder den cm_key oder no oder ist leer. Da ist für mich schon ein Unterschied. Sicher hätte man das anders lösen können, aber ich habe es eben nun mal so gemacht. Der einzige wirkliche Fehler war die () hinter der Variable. Das ist mir einfach nicht aufgefallen. Mehr ist da nicht dran und mehr muss man da auch nicht draus machen. Danke nochmal.

                  Kommentar

                  Lädt...
                  X