array_keypath

Door Jelmer -, 18 jaar geleden, 3.285x bekeken

Soms is het handig om het pad an sich mee te geven, bijvoorbeeld wanneer je een array op een waarde diep diep in de hiërarchie verborgen wilt sorteren. Hij geeft NULL terug wanneer het pad niet bestaat.

De functie ondersteund ongeveer dezelfde syntax als Javascript. Dat wil zeggen, je kan je hiërarchie beschrijven als in PHP, a[b][c][d], maar ook punten mogen gebruikt worden als scheiding. Hij is redelijk relaxt met het mixen van beide notaties. zo zal array[42] [al fa].[beta][gamma][alfa] maar ook array.42.al fa.beta.gamma.alfa of array[42][al fa] .beta..gamma[alfa] werken.

Merk op dat spaties ook in de namen mogen voorkomen (net zoals bij echte arrays) en dat je die dus niet als scheidingsteken kan gebruiken. Spaties tussen de haakjes is wel toegestaan.

Gesponsorde koppelingen

PHP script bestanden

  1. arraykeypath

 

Er zijn 6 reacties op 'Snippets'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Richard van Velzen
Richard van Velzen
18 jaar geleden
 
0 +1 -0 -1
Waarvoor zijn die references? En waarom recursief en niet iteratief, wat snelheid en geheugengebruik zou bevorderen?
Jelmer -
Jelmer -
18 jaar geleden
 
0 +1 -0 -1
Je hebt gelijk. Het idee was dat hij dankzij de references niet constant de array hoefde te kopiëren, maar het leidt tot hele vreemde situaties soms. En hij was recursief omdat het kan. En omdat dat een slechte reden is, heb ik hem ook maar gelijk iteratief gemaakt.

Of hij nu werkelijk sneller is weet ik niet, niet getest.
Jesper Diovo
Jesper Diovo
18 jaar geleden
 
0 +1 -0 -1
Dus eigenlijk simpel gezegd: een string waarin een array value wordt opgehaald daadwerkelijk uitvoeren?
Jelmer -
Jelmer -
18 jaar geleden
 
0 +1 -0 -1
Zo ongeveer ja :)
Richard van Velzen
Richard van Velzen
18 jaar geleden
 
0 +1 -0 -1
Nette update Jelmer. :)
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Han eev
Han eev
18 jaar geleden
 
0 +1 -0 -1
Mooie snippet!
Die ga ik gebruiken, handig.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. arraykeypath

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.