Unterscheidung statische Methodenaufrufe

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Unterscheidung statische Methodenaufrufe

    Hi

    Hätte eine eher seltenes Problem, wofür ich auch nach durchlesen des Manuals keine Antwort gefunden habe. Ich habe in einer Klasse eine Methode die ganz klassisch, aber auch statisch aufgerufen werden kann. Nun möchte ich innerhalb dieser Methode festellen ob ein statischer Aufruf vorliegt. Damit keine Missverständnisse auftreten hier das ganz in PHPcode:
    PHP Code:
    // Snippet aus der Klasse

    function myFunction() {
       
      
    // Hier möchte ich unterscheiden ob die Klasse statisch 
      // aufgerufen wurde, da eine Untescheidung in der Logik gemacht wird

    }
    // Snippet Script -- Klasse im Einsatz

    // Standard Methode
    $myOby = new myClass();
    $result $myObj->myFunction();

    // oder statischer Aufruf
    $result myClass::myFunction(); 
    Danke im Voraus
    Alf(i)

  • #2
    Sorry - Problem hat sich gelöst - habe viel zu kompliziert gedacht und nach ein speziellen Funktion gesucht. Kurz nach absenden des Beitrages traf mich der Geistesblitz. Ist ja ganz einfach zu lösen. Wobei ich jetzt natürlich nicht weiß ob das ganz richtig so ist, aber es funktioniert..
    PHP Code:
    if (@isset($this)) {
       echo 
    'Objekt Aufruf';
    } else {
       echo 
    'Statischer Aufruf';

    im Bemühen das nächste Mal genauer nachzudenken
    Alf(i)

    Comment

    Working...
    X