Olaf: Frage zu include bei PHP5

Hallo miteinander,

ich habe gerade eines meiner PHP Scripte auf einer Domain ausprobiert, die von PHP4.3 auf PHP 5 hoch ging. Nach dem Upgrade hat nichts mehr funktioniert.

Jetzt bin ich darauf gestoßen, woran es liegt

include("datei.inc");

funktioniert plötzlich mit PHP5 nicht. Fehlermeldung gibt es keine.

include "datei.inc";

aber schon. Darf denn das sein oder ist da irgendwas am PHP falsch konfiguriert? Meiner Meinung nach müssten doch beide Varianten funktionieren.

Danke und viele Grüsse

Olaf

  1. Anscheinend wurde die Funktion include() in PHP5 durch das Sprachkonstrukt include ersätzt - include wird jetzt also genauso behandelt wie zB. echo

    1. Hallo Ashura,

      ja, error reporting ist tatsächlich auf E_ALL. Ich vermute ganz stark, dass der Fehler an der PHP Installation liegt.

      Anscheinend wurde die Funktion include() in PHP5 durch das Sprachkonstrukt include ersätzt - include wird jetzt also genauso behandelt wie zB. echo

      @Igor
      weißt Du das sicher, oder ist das nur eine Vermutung? Ich habe in der PHP Doku nichts von einer Umstellung gelesen, lasse mich aber gerne eines Besseren belehren.

      Viele Grüsse

      Olaf

      1. Hallo Olaf.

        ja, error reporting ist tatsächlich auf E_ALL. Ich vermute ganz stark, dass der Fehler an der PHP Installation liegt.

        Was in diesem Falle durchaus möglich sein kann, auch wenn ich mir die Fehlfunktion nicht erklären kann.

        Funktionieren include_once, require(_once) oder readfile? (Letzteres natürlich nur nur zu Testzwecken.)

        Ich habe in der PHP Doku nichts von einer Umstellung gelesen, lasse mich aber gerne eines Besseren belehren.

        Seine Äußerung stimmt schon, wie der entsprechenden Manual-Seite zu entnehmen ist:

        Anmerkung: Da dies ein Sprachkonstrukt und keine Funktion ist, […]

        Zudem ist include unter den Kontrollstrukturen und nicht unter irgend einem Bereich in der Funktionsreferenz aufgeführt.

        Aber selbst echo kann mit oder ohne Klammern verwendet werden, daran kann es also bei dir nicht liegen.

        Einen schönen Montag noch.

        Gruß, Ashura

        --
        sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
        „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
        [HTML Design Constraints: Logical Markup]
        1. Hallo miteinander,

          vielen dank Euch allen für Eure Hilfe. Das hilft mir schon mal weiter.

          Viele Grüsse

          Olaf

  2. Hallo Olaf.

    Jetzt bin ich darauf gestoßen, woran es liegt

    include("datei.inc");

    funktioniert plötzlich mit PHP5 nicht. Fehlermeldung gibt es keine.

    Ersteres stimmt nicht und zweiteres bezweifle ich. Hast du error_reporting auf E_ALL gestellt?
    Liegt die einzubindende Datei wirklich dort, wo du sie vermutest?
    Wie unterscheidest du Erfolg und Misserfolg der Einbindung?

    Einen schönen Montag noch.

    Gruß, Ashura

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
    [HTML Design Constraints: Logical Markup]
  3. Hello,

    include("datei.inc");

    funktioniert plötzlich mit PHP5 nicht. Fehlermeldung gibt es keine.

    include "datei.inc";

    aber schon.

    Ich hatte daa auch Problem in den letzten Tagen.

    $ok = (include_once ('.ht_config.php'));

    So funktioniert es aber, auch mit "include". Wenn ich aber das Leerzeichen vor öffnenden der Klammer nach include_once weglasse, habe ich auf manchen Systmen Probleme. Genauer habe ich das noch nicht untersucht. Es ist mir eben erst aufgefallen...
    Ich hatte gedacht, dass ich mich nur irgendwo verschrieben hätte.

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau