PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Name eines Objekts ausgeben (https://www.php-resource.de/forum/php-developer-forum/73777-name-eines-objekts-ausgeben.html)

Zumm 01-08-2006 22:59

Name eines Objekts ausgeben
 
Hallo,

folgendes Problem (obwohl die Lösung sicherlich sehr trivial ist, aber ich habe einfach nichts gefunden. Bei dem Thema gibt es auch wenig vielsagende Stichworte):

Ich möchte innerhalb einer Klasse den Namen des Objektes ausgeben, welches eine Instanz dieser Klasse ist. Geht das?

PHP-Code:

class Klasse {
    private 
$objekt_name;
    function 
get_objekt_name() {
        
//...
    
}
}

ein_objekt = new Klasse ();
echo 
ein_objekt->get_objekt_name(); 

Die echo-Anweisung in der letzten Zeile soll nun "ein_objekt" ausgeben. Ich brauche dies, damit ich innerhalb der Klasse bestimmte Dateien includen kann, die abhängig von dem Namen des Objekts sind.

Der Gedanke dahinter ist, dass ich weniger Variablen durch den Konstruktor schicken muss. So würde ich dann in diesem Beispiel eine Datei namens ein_objekt_variablen.php includen, in der ich dann verschiedene Variablen deklariert habe.

Vielleicht habt ihr ja auch andere Ideen, wie ich das eleganter lösen könnte?

3DMax 02-08-2006 01:15

den klassennamen bekommst du mit get_class() oder wenn das ding abgeleitet ist get_parent_class()

bin mir aber gar nicht sicher, ob das überhaupt funktioniert, was du da vor hast.
ich wollte mal dynamisch methoden inkludieren und das ging nicht.

was willst du denn eigentlich für variablen mitgeben?

penizillin 02-08-2006 01:21

Zitat:

Ich brauche dies, damit ich innerhalb der Klasse bestimmte Dateien includen kann, die abhängig von dem Namen des Objekts sind.

Der Gedanke dahinter ist, dass ich weniger Variablen durch den Konstruktor schicken muss.
einfacher wäre, du korrigierst deine sichtweise auf die oop und schreibst lieber eine kontrollvariable in den konstruktor rein - sowohl deine nachfolger als auch du selbst (evtl. in vielen monaten) werdet dir dankbar sein, eine übersichtliche kontrolle ohne verletzung des encapsulation-paradigmas eingebaut zu haben.


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:39 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG