Robbe: statische Klasse in Obj mehrfach includieren, mit CodeBsp!

Beitrag lesen

Hallo Selfer,

Ich habe folgendes Problem (oder Denkfehler?)..

Ich versuche eine statische Klasse in Objektklassen mehrfach einzubinden, da ja jd. Klasse ihre eigene "Umgebung" besitzt und nichts vom sog. MainProgramm weiss, es sei ich importiere es.

Sachverhalt:
Ich versuche eine statische Klasse in mehreren Objekten einzubinden, dies scheitert jedoch mit "Fatal error: Cannot redeclare class test3 in ...\prob02_c3.php on line 4"..

Hier das konkrete Beispiel (Einfach in sep. Dateien in ein Verzeichniss kopieren und prob02.php starten [PHP4]):

---------------------------------------------------
file: prob02.php
---------------------------------------------------
<?php

include("prob02_c1.php");
$obj1 = new test1();
$obj1->machwas();

include("prob02_c2.php");
$obj2 = new test2();
$obj2->machwas();

?>
---------------------------------------------------

---------------------------------------------------
prob02_c1.php - DummyObjekt 2
---------------------------------------------------
<?php

class test1
{

function test1()
 {
  echo "constructor on test1<br>";
 }

function machwas()
 {
  echo "test1 on work...<br>";
  include("prob02_c3.php");
  test3::machwas();

}

}

?>
---------------------------------------------------

---------------------------------------------------
prob02_c2.php - DummyObjekt 2
---------------------------------------------------
<?php

class test2
{
 function test2()
 {
  echo "constructor on test2<br>";
 }

function machwas()
 {
  echo "test2 on work...<br>";
  include("prob02_c3.php");
  test3::machwas();
 }

}

?>
---------------------------------------------------

---------------------------------------------------
prob02_c3.php - Statische Klasse
---------------------------------------------------
<?php

class test3
{

function machwas()
 {
  echo "static function machwas at test3...<br>";
 }

}

?>
---------------------------------------------------