Symfony, array naar entity
Ik heb een array en wil hiermee eigenlijk met 1 functie een entity vullen. Maar ik vraag mij af of dit mogelij is? Na googelen kom ik wel het omgekeerde tegen (entity naar array). Weet iemand een bepaalde functie die dit kan doen? Ik denk dat het met de serializer wel moet lukken maar ik kan niet uitvogelen hoe dit moet.
Ik heb dus (bijvoorbeeld) een entity met de volgende velden:
- id
- naam
- straat
- nummer
en de volgende array:
Is het mogelijk om de entity in 1x te vullen met de array (aangezien de veldnamen hetzelfde zijn) ?
Ik heb hem gezien. Het leek me alleen zo omslachtig om eerst een array naar JSON en dan naar een Object te parsen vandaar dat ik het hier even vroeg. Maar als dit de enige manier is :)
converteert naar een object van de StdClass klasse?
Of een typecast met (object), die je array Bijvoorbeeld:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
public function fromArray($array)
{
$this->id = $array['id'];
$this->naam = $array['naam'];
$this->straat = $array['straat'];
$this->nummer = $array['nummer'];
return $this;
}
public function toArray()
{
return array(
'id' => $this->id,
'naam' => $this->naam,
'straat' => $this->straat,
'nummer' => $this->nummer
);
}
?>
public function fromArray($array)
{
$this->id = $array['id'];
$this->naam = $array['naam'];
$this->straat = $array['straat'];
$this->nummer = $array['nummer'];
return $this;
}
public function toArray()
{
return array(
'id' => $this->id,
'naam' => $this->naam,
'straat' => $this->straat,
'nummer' => $this->nummer
);
}
?>
De Serializer Component kan echter ook naar JSON en XML converteren. Mocht je dat willen gebruiken dan hier een paar linkjes:
een serializable User entity
De PHP serializable interface
de Serializer Component
Gewijzigd op 10/03/2016 18:17:55 door Frank Nietbelangrijk
Code (php)
Tevens bestaat de Serializer component uit 2 delen: JSON/XML/whatever -> array en array -> object. Dat laatste deel kun je dus prima hergebruiken.
Dank je wel allemaal, ga vandaag verder met het uitvogelen van de serializer.