Pagina 1 van 1

PHP vraagje ivm arrays

Geplaatst: 22 jul 2018, 17:09
door ubremoved_539
Momenteel heb ik volgende code;

Code: Selecteer alles

$x = array();
$x["key1"] = value1;
$x["key2"] = value2;
foreach ($x as $key=>$value) {
}
... echter in plaats van een single value wil ik hier meerdere dingen (value, title, kleur, ...).

Iemand een voorbeeldje ?

Al heb ik het zelf al gevonden...

Code: Selecteer alles

$x = array();
$x["key1"][0] = value1;
$x["key1"][1] = value1b;
$x["key2"][0] = value2;
$x["key2"][1] = value2b;
foreach ($x as $key=>$value) {
... $key en $value[0 of 1]
}
... tenzij er een elegantere methode is. Het zou "mooier" zijn moest ik in de foreach loop de values kunnen toekennen aan aparte veldnamen.

Re: PHP vraagje ivm arrays

Geplaatst: 22 jul 2018, 17:32
door 7zp
Er zijn verschillende manieren om dit te doen, je kan oftewel multidimensionale arrays gebruiken

Code: Selecteer alles

$array["key1"]["value"] = "iets";
$array["key1"]["color"] = "red";
$array["key1"]["tittel"] = "header";

foreach ($array as $key=>$value) {
	// $value["color"]
}
Of arrays van arrays

Code: Selecteer alles

$array[] = array("value"=>"iets", "color"=>"red", "tittel"="header");

Maar als je er van uitgaat dat je 'meerdere dingen' altijd het zelfde zijn, is het best om een class te schrijven, en de objecten in een array te steken.

Code: Selecteer alles

class Dingen {
	public $value;
	public $color;
	public $title;
}

$ding1 = new Dingen();
$ding1->value="iets";
//.....

$dingenArray[] = $ding

foreach($dingenArray as $index=>$object) {
	//$object->value 
}

Re: PHP vraagje ivm arrays

Geplaatst: 22 jul 2018, 17:36
door ubremoved_539
Thanks... je eerste is wat ik net zelf al had gevonden maar een string al index waarde gebruiken maakt het beter leesbaar.