phpbar.de logo

Mailinglisten-Archive

[php] Method from Class from Class from Class

[php] Method from Class from Class from Class

P. Genna Privat genna.p.p at tat-world.de
Die Mai 6 16:39:43 CEST 2008


Sebastian Mendel schrieb:
> P. Genna Privat schrieb:
>   
>> Im Kopf macht es Sinn,
>> aber warum gehts trotzdem nicht?
>> Code selbsterklärend:
>>
>> <?php
>> class main {
>>     public function set($class){
>>         $this->$class = new $class;
>>     }
>> }
>>
>> class math{
>>     public function add($a, $b){
>>         return $a + $b;
>>     }
>> }
>>
>> class view extends main {
>>     public function show($a, $b){
>>         echo $this->math->add($a, $b);
>>     }
>> }
>> $run = new main;
>> $run->set("math");
>> $run->set("view");
>> $run->view->show(5,6);
>>     
>
> $run->view->math gibt es nicht! sondern nur $run->math
>
> weil in $run->view kein $this->math ($run->view->math) existiert
>
> dies hast du oben in $run erzeugt, aber nicht in $run->view
>
>   
Also die Idee war folgende:

'math' verwaltet alle objekte da es sie ja mit 'add' in die 
Eigenschaften lädt.
Ein abruf mit '$run->math->add(5,6);' funktioniert was zeigt das der 
Gedanke Früchte trägt.
Was aber wenn andere Objekte auf wiederum andere Objekte zugreifen 
müssen während ich sie rufe?
Die Methode 'show' von 'view' zum Beispiel.
Für den Fall, so dachte ich zumindest, benutze ich 'extends main' da 
dadurch ja der Zugriff auf die Eigenschaften des Oberobjektes 'main' 
möglich sein soll wo 'math' residiert.

Aber...it wont.


php::bar PHP Wiki   -   Listenarchive