__FILE__ und Vererbung geht nicht

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

  • phpaule
    antwortet
    Axo na dann

    Einen Kommentar schreiben:


  • axo
    antwortet
    get_class($this) sollte schon gehen. das ".php" musst dir halt dazufälschen.

    grüße
    axo

    Einen Kommentar schreiben:


  • phpaule
    antwortet
    Über Reflection hab ichs auch grad mal probiert. Geht leider auch nicht.

    PHP-Code:
        public function action()
        {
            
    $func = new ReflectionClass(__CLASS__);
            echo 
    $func->getFileName();
        } 

    Einen Kommentar schreiben:


  • phpaule
    antwortet
    Mach ich doch

    Das Problem eigentlich ist, ich brauch den Pfad zur Klasse, denn den brauche ich um eine andere Datei automatisch einzubinden.

    Einen Kommentar schreiben:


  • TobiaZ
    antwortet
    Aber das Kind ist das wichtigste, von dem will ich ja den Dateinamen
    Ja, das sagtest du bereits.

    Machs wie in JAVA, die datei nach der Klasse benennen.

    Einen Kommentar schreiben:


  • phpaule
    antwortet
    @Slava

    Das geht nicht, hab ich schon probiert. Da PHP_SELF immer die Datei ist die beim Aufruf angesprochen wird und in meinem Fall werden die Klassen includiert.

    Also würde dort nicht der Filename der Klasse stehen.

    @TobiaZ
    Aber das Kind ist das wichtigste, von dem will ich ja den Dateinamen

    Einen Kommentar schreiben:


  • TobiaZ
    antwortet
    dann aber bloß nicht die kind.php includen.

    Einen Kommentar schreiben:


  • Slava
    antwortet
    $_SERVER['php_self'] statt __FILE__ benutzen

    Einen Kommentar schreiben:


  • phpaule
    hat ein Thema erstellt __FILE__ und Vererbung geht nicht.

    __FILE__ und Vererbung geht nicht

    Hallo liebe Forenteilnehmer,

    ich versuche gerade folgendes:


    PHP-Code:
    // vater.php
    class Vater {
        public function 
    action()
        {
            echo 
    __FILE__;
            
        }
    }

    // kind.php
    class Kind extends Vater {
        
    }

    $k = new Kind();
    $k->action();

    // Es wird vater.php ausgegeben 
    Was kann ich machen das bei action() kind.php ausgegeben wird, ohne die Methode neu zu definieren? D.h. einmal in der Oberklasse definiert, kann man den Dateinamen der Kindklasse bekommen.


    MFG

    phpaule
Lädt...
X