Mailinglisten-Archive |
Hallo > eine Grundsatzfrage: In Scripten (zB.: phplib, Buch: "PHP Grundlagen > und Lösungen") finde ich bei Klassen oft folgenden Konstrukt: > > class hallo{ > var classname = "hallo"; > ... > } > > Warum wird des öfteren eine Variable "clasename" definiert? Gehört das > zum "guten Programmierstil"? > > Vielleicht kann mich ja jemand "aufklären" ;-) Die phplib macht das, um Klasseninstanzen mitsamt Slotvariablen speichern (einfrieren/freeze) zu können. PHP kennt leider keine internen Referenzen auf Properties oder sogar Objekthierarchien der Klasse (außer, daß eine Klasse ein Objekt ist :). Folglich muß man einer Klasse zum "auftauen" angeben, von welcher Oberklasse sie abstammt, um die Instantiierung mit instance = new parent_class vornehmen zu können. instance->classname="parent_class" dient als eine Art Krücke, um das Fehlen dieser Information bei der Restauration zu reparieren. Steht aber sicherlich auch in dem Buch. mit freundlichen Grüßen, oK.
php::bar PHP Wiki - Listenarchive