Visa ett inlägg
Oläst 2004-12-27, 02:15 #1
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Hej!
Jag håller på att skriva en class och vill ha en funktion utanför classen
som kan lista innehålla från samtliga definierade instanser av classen.
Följande lösning fungarar inte, då endast saker som ändras i construktorn
kommer med i $allapersoner

Kod:
<?PHP

$kalle = new person("Karl");
$pelle = new person("Per");
$lasse = new person("Lars");

$pelle->bytnamn("Peter");

skrivutallapersoner();

exit;


class person {
	var $namn;

	function person ($nyttnamn) {
 global $allapersoner;
 $allapersoner[] = &$this;

 $this->bytnamn($nyttnamn);
	}

	function bytnamn ($nyttnamn) {
 $this->namn = $nyttnamn;
	}
}


function skrivutallapersoner() {
	global $allapersoner;
	foreach ($allapersoner as $tmpperson) {
 echo($tmpperson->namn."<br />\n");
	}
}

?>
Ger följande outout:
Citat:
Karl
Per
Lars
$pelle har med andra ord inte bytt namn i referensen!

Hur löser man detta, eller ett annat bra sätt att lista vilka instansen som finns av en viss class?
Tvartom är inte uppkopplad   Svara med citatSvara med citat