ugrás a tartalomhoz

Archívum - Szep 4, 2010 - Fórum téma

Eladó Programtervezési minták könyv

palacsint · 2010. Szep. 4. (Szo), 16.21
Eladó az alábbi könyv:

Programtervezési minták
Újrahasznosítható elemek objektumközpontú programokhoz
Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides

ISBN-10: 9639301779

http://kiado.kiskapu.hu/86
http://weblabor.hu/konyvek/programtervezesimintak

Érdeklődni: konyv kukac mail.palacsint.hu
 

Asszociatív tömbből, asszociatív tömb, ami objektumokat tárol

whiteman0524 · 2010. Szep. 4. (Szo), 12.44
Üdv !

A címet sajnos nem tudtam jobban megfogalmazni, de majd mindjárt megpróbálom érthetőbben leírni a problémát :)

Szóval, adott egy asszociatív tömb, például egy ilyen :

$tomb = array(
	'elso'     => 1,
	'masodik'  => 2,
	'harmadik' => 5,
	'negyedik' => array(
		'elso'     => 1,
		'masodik'  => 2,
		'hamradik' => array(
			'elso'    => 5,
			'masodik' => 4,
		)
	)
);
Azt, szeretném elérni, hogy ennek a tömbnek, minden elemét átalakítom egy objektummá. Tehát például a $tomb['elso'] eleme, egy olyan objektum lesz, ami az 1 értéket tárolja, amit mondjuk a getValue() metódussal lehet elérni. A $tomb['negyedik'] eleme, pedig egy olyan objektum, aminek az értéke szintén egy tömb lesz, mégpedig az 'elso', 'masodik', és a 'harmadik' kulcsokkal, ahol minden kulcs szintén egy objektumot reprezentál az előzőeknek megfelelően.

Biztos iszonyat könnyű a feladat, de nekem valahogy nem sikerül a dolog. Próbáltam egy ilyen kóddal :

function map(&$array){
	foreach($array as $key => $value){
		$value = new Objektum($value);
		if(is_array($value->getValue())){
			map($value->getValue());
		} 
	}
}
..de itt azt a hibát kaptam, a 'map($value->getValue());' sorra, hogy 'Only variables should be passed by reference'. Szóval nem tudom hogyan lehetne ezt megoldani.

A segítséget előre is kösz.