PHP is een server - gebaseerde taal voor het creëren van interactieve webapplicaties en renderen user content on demand . Het ondersteunt een verscheidenheid aan gegevens verzamelen klassen in de array concept , met inbegrip van geïndexeerde arrays en associatieve arrays . Met een groot aantal gebruikers , kan de prestaties van uw code een probleem geworden . Hoewel associatieve arrays niet significant CPU-overhead nodig , moeten ze meer geheugen op te slaan in het RAM als uw programma draait . Arrays geïndexeerde Een standaard geïndexeerde array in PHP en andere talen bevat een reeks latere waarde indexen toegewezen aan data waarden . Een datawaarde wordt geopend door te verwijzen naar de index of positie in de array $ my_array = array ( 1 , 2 , 3 , 4 , 5 ) . Toegang tot het element " $ my_array [ 0 ] " geeft de waarde 1 . Geïndexeerde arrays zijn het beste voor het opslaan en gebruiken van gestructureerde gegevens . Het zou inefficiënt om het volgende te doen , omdat het in de gaten in indexwaarden zou vullen , toegang tot een zeer grote hoeveelheid geheugen : $ my_array [ ] = 7 ; $ my_array [ 13 ] = 5 ; $ my_array [ 76 ] = -4 ; associatieve arrays In tegenstelling tot geïndexeerde arrays , PHP associatieve arrays bevatten een reeks van key-value pairs . De gegevenswaarden worden benaderd door te verwijzen naar de sleutel die ofwel een unieke string of een numerieke waarde kan zijn . De inefficiënte bovenstaande voorbeeld kan beter geschreven worden als een associatieve array : $ my_array ( 0 = > 5 , 13 = > 5 , 75 = > -4 ) ; $ my_array ( "een" = > 1 , " twee " = > 2 , ' zeventien ' = > 17 ) ; CPU-prestaties PHP is geoptimaliseerd voor de verwerking van de snaren . Met een tekenreeks als sleutel voor een associatieve array niet produceert veel overhead . Bij het benaderen van een element in een associatieve array in PHP , wordt de array niet gezocht van begin tot einde te bepalen of een van de sleutels wedstrijd . In plaats daarvan , een sleutel in een associatieve array kaarten op een indexwaarde , zonder extra overhead in lookup keer over geïndexeerde arrays . Memory optreden Sinds PHP associatieve arrays winkel een sleutel - waarde paar , in tegenstelling tot slechts een waarde , ze vereisen extra geheugen overhead , ruimte je programma gebruikt in RAM tijdens het hardlopen , in vergelijking met geïndexeerde arrays . Dit extra geheugen is meestal verwaarloosbaar , tenzij je gebruik van zeer grote arrays . In dit geval kan het verstandig te splitsen zeer grote arrays in een subset van arrays die kunnen worden benaderd als dat nodig is.
|