mehrdimensionales array in Klassendefinition ?

moses_the_jackass

Grünschnabel
Hi,
also ich habe eine Klasse in der sich mehrere mehrdimensionale arrays befinden sollen, leider habe ich probleme bei der initialisierung ?

also das array soll folgender maßen aussehen...

// arr[1][1] = id: 12
//
// id | name | wert
// ------------------
// 12 | landA | 1000
// 13 | landB | 500


mein versuch war:
var $arr = array($id = array(), $name = array(), wert = array());

aber das net kommt immer der fehler:
Parse error: parse error, unexpected T_VARIABLE, expecting ')' in ...

wenn ich nur var $arr = array(); mache dann gehts ?

wenn ich aber nur var $arr; benutze kann ich später nicht einfach von außen werte wie etwa

$arr[1][1] = 12; oder so machen das klappt dann nicht ....

bitte helft mir .....;-)

ps: hier nochmal ein codebeispiel wie es ungefähr (grob) aussieht:

class wss {

var $wss_id;
var $name;
var $prozent;


var $land_id = array();
var $land_name = array();
var $land_wert = array();
var $landarray = array($land_id, $land_name, $land_wert);

} Klasse wss
 
Zuletzt bearbeitet:
Mit der Zeile var $arr = array($id = array(), ...) versuchst du innerhalb der Funktion array() 3 Variablen zu deklarieren ($id, $name, $wert). Das lässt PHP aber von der Syntax her nicht zu (Parse Error!). Du darfst nur die Werte übergeben, aber keine Variablen deklarieren!

Wenn du nur var $arr = array() machst, kommt zwar kein Fehler, aber du kannst logischerweise auch auf Elemente wie $arr[1][1] nicht zugreifen, da diese ja nicht existieren, wenn du sie nicht übergeben oder nachträglich hinzugefügt hast!

Du kannst nun folgendes machen:

1.) Du erstellst Variablen und weist diesen jeweils das Array zu, das dem anderem Array übergeben werden soll:
PHP:
var $param0 = array();
var $param1 = array();
var $param2 = array();

var $arr = array($param0, $param1, $param2);
2.) Du erstellst nur das Array und übergibst diesem die Werte:
PHP:
var $arr = array(array(), array(), array());
mfg
split
 
Zurück