php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.11.2005, 12:44  
Erfahrener Benutzer
 
Registriert seit: 02.03.2005
Beiträge: 306
DerDesian
Standard dynamische Variablen- und Klassennamen

Hi,

gut, dynamische Variablen sind mir bekannt und fänd man auch in der Suche
PHP-Code:
<?PHP $a = ${$varName}; ?>
Interessant wird die Frage erst hier
Simple Funktionalität:
PHP-Code:
<?PHP
class {
  function 
getById($id) {
    
$query "bla";
    
$row bla..
    return new 
A($daten);
  }
}
?>
soll in etwa so funktionieren
PHP-Code:
<?PHP
abstract class {
  function 
getById($id) {
    
$query "bla";
    
$row bla..
    return new 
__CLASS__($row);
    
//oder
    // return new {__CLASS__}($daten);
    // genau die beiden tun aber leider so nicht
  
}
}
class 
extends {
  
blabla
}
$a A::getById($id); // soll dann die Instanz der aktuellen Klasse durch die geerbte Funktion bekommen
?>
Ich möchte eine Funktion in eine Abstrakte Klasse auslagern. Die Funktion muß die Klasse kennen, die sie zu instanziieren hat, nämlich sich selbst.
Da diese Funktion aber von verschiedenen Klassen geerbt werden kann, ist der Klassenname dynamisch.
Ich würd gern ne Lösung haben, die ohne einen switch oder eine Factory auskommt, eben eine an die ich beim erben nicht mehr ran muß und eine neue Klasse hizutragen muß.

Gruß
Der Desian
__________________
Wenn dich was ankotzt, machs besser.
DerDesian ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.11.2005, 13:11  
Gast
 
Beiträge: n/a
Standard

Switch nein, Factory ja

PHP-Code:
<?php
abstract class foo {
    abstract public function 
bar();
}

class 
extends foo {
    public function 
bar() {
        echo 
'Die Bar ist offen. ';
    }
}

class 
extends foo {
    public function 
bar() {
        echo 
'Bar jeder Vernunft. ';
    }
}

class 
fooFactory
{
    public function 
createFoo($fooClass) {
        
$rc = new ReflectionClass($fooClass);
        if (!
$rc->isSubclassOf('foo')) {
            throw new 
InvalidArgumentException("'".$fooClass.'\' is not a subclass of foo');
        }
        
$fooObjekt $rc->newInstance();
        return 
$fooObjekt;
    }
}

$fac = new fooFactory();

$obj $fac->createFoo('A');
$obj->bar();

$obj $fac->createFoo('B');
$obj->bar();
?>
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Klasse statt globaler Variablen ecomeback PHP-Fortgeschrittene 6 15.07.2008 16:30
Übergeben von Variablen an in PHP eingebundenes Perl-Script shredder01 PHP Tipps 2008 3 04.04.2008 09:25
Datei mit Variablen so includen, dass Variablen nutzbar? BartTheDevil89 PHP Tipps 2008 6 22.01.2008 20:57
unerklärliches Leeren von Variablen KuShi PHP Tipps 2007 2 08.07.2007 15:19
Teil einer Variablen mit einer Variablen ersetzen ? simsalabim PHP Tipps 2007 11 20.03.2007 20:36
Dynamische Variablen maxmara PHP Tipps 2006 7 08.06.2006 10:27
Dynamische Variablen PHP Tipps 2006 4 06.02.2006 09:41
Variable aus Variablen zusammensetzen juhuwoorps PHP Tipps 2007 1 28.11.2005 21:50
[Erledigt] Dynamische Generierung von Variablen Datenbanken 0 09.06.2005 15:13
Variablen übergeben bzw. auslesen? PHP Tipps 2005 4 30.01.2005 03:56
[Erledigt] register globals off bei variablen Variablen... PHP Tipps 2005 4 25.01.2005 17:50
php variablen in mysql PHP Tipps 2004-2 8 06.12.2004 16:41
Variablen Namen zuweisen dh1sbg PHP Tipps 2004-2 3 12.11.2004 17:12
[Erledigt] dynamische variablen namen PHP Tipps 2004-2 1 05.11.2004 23:05
Variablen per adresse übergeben rocco PHP Tipps 2004 7 24.07.2004 12:03

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php dynamische klassennamen, php klassenname, php dynamischer klassenname, php klassenname dynamisch, php klassenname variable, php klassennamen dynamisch, php klassenname in variable, php variable klassennamen, php variable als klassenname, php klassennamen, php dynamische variablen klassen, php klassenname aus variable, php klassenname als variable, php variable klassenname, klassenname in variable php, klassennamen php, variable klassennamen php, php klasse dynamisch aufrufen, klassenname als variable php, php dynamische variablen

Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.