Einzelnen Beitrag anzeigen
  #1  
Alt 05.03.2010, 15:15:46
ghost120 ghost120 ist offline
Anfänger
 
Registriert seit: Mar 2010
Alter: 32
Beiträge: 4
In einer Klasse auf andere Klassen zugreifen

Hallo,

ich beschäftige mich gerade ein bisschen mit OOP.
Jetzt hab ich mal auf die schnelle ein Beispiel geschrieben, weil ich mir einfach nicht sicher bin ob das so richtig ist, bzw. ob man es besser machen könnte....
Und zwar, in der test.php will ich auf alle Funktionen Zugriff haben und in den einzelnen Klassen auch.

test.php
PHP-Code:
<?php

include("testCore.php");

testCore::getTest()->getParamFromTestCore();

?>
testCore.php
PHP-Code:
<?php

require("testClass.php");

class 
testCore {
    
    private static 
$test;
    
    function 
initTest() {
        
self::$test = new testClass;    
    }
    
    public function 
getTest() {
        if(
self::$test === nullself::initTest();
        return 
self::$test;    
    }
    
    function 
showSomething() {
        return 
'Ausgabe...';    
    }
    
}

?>
testClass.php
PHP-Code:
<?php

class testClass {
    
    function 
getParamFromTestCore() {
        return 
testCore::showSomething;    
    }
    
}

?>
Die Funktionen und Namen sind jetzt nicht wirklich sinnvoll, aber wie gesagt, es soll auch nur ein Beispiel sein.
Also ich will im Core alle Klassen laden und dann in den einzelnen Klassen Zugriff auf die anderen haben.
Also wenn ich jetzt im Core noch die DB und TPL Klasse laden würde, hätte ich in der TestClass.php Zugriff auf diese Klassen.
Und ich dachte mir, aufrufen tu ich das ganze dann über den Core.
Aber ich denke mir halt, die beste Lösung ist es sicher auch nicht, also falls jemand Vorschläge hat, wäre ich sehr dankbar.

Eine andere Möglichkeit wäre auch noch, die ganzen Klassen in der test.php zu laden und dann wie folgt aufzurufen:

$db->getRow('query...');
$tpl->assign('...');

Allerdings habe ich ja dann in den Klassen wieder keinen Zugriff darauf.

Danke

lg Alex

Geändert von ghost120 (05.03.2010 um 15:26:26 Uhr)
Mit Zitat antworten