Iets wat ik mij al een tijdje afvraag 
Waarom wordt er in PHP altijd gereturnd dmv. van arrays (die strings als keys kunnen hebben, dus een soort stl map<string, string> uit C++ - maar dan ook op willekeurige plaatsen een map in een map), en niet dmv. van 'structs', zoals het volgens mij eigenlijk hoort?
Een voorbeeldje:
Stel je hebt een persoon met volgende gegevens: naam, voornaam, adres, en lijst van favoriet eten.
In C++/Java zou je toch een struct/class aanmaken:
Thanks
                    
            Waarom wordt er in PHP altijd gereturnd dmv. van arrays (die strings als keys kunnen hebben, dus een soort stl map<string, string> uit C++ - maar dan ook op willekeurige plaatsen een map in een map), en niet dmv. van 'structs', zoals het volgens mij eigenlijk hoort?
Een voorbeeldje:
Stel je hebt een persoon met volgende gegevens: naam, voornaam, adres, en lijst van favoriet eten.
In C++/Java zou je toch een struct/class aanmaken:
code:
En dus ook een functie die zo'n object returnt:1
2
3
4
5
6
 | class Persoon
{
     std::string m_voorNaam;
     std::string m_achterNaam;
     std::vector<string> m_favorietEten;
} | 
code:
Waarom doet bijna niemand dat in PHP (ik heb al aardig wat bestaande scripts bekeken, nog nooit tegengekomen). Daar returnt men gewoon een array, met volgende structuur:1
 | Persoon getPersoon(int persoonId);  | 
code:
Is dat puur omv. snelheidsoverwegingen (primitieve types sneller dan zelf-gedefinieerde objecten), of zijn er andere redenen voor?1
2
3
4
5
6
7
8
9
10
 | array
(
     ['voorNaam'] = "DiEana"
     ['achterNaam'] = "anaEiD"
     ['favorietEten'] = array
          (
               [0] = "Lasagna"
               [1] = "Fritteeeeeeeeeeuh"
          )
) | 
Thanks