Twee Performance vragen php

Status
Niet open voor verdere reacties.

migthy84

Gebruiker
Lid geworden
13 okt 2009
Berichten
580
Beste Helpmij.
Op dit moment ben ik bezig een website in elkaar aan zetten en wil graag weten qua performance beter is.Is het verstandig een waarde van string positie in een aparte variable neer te zetten indien je deze 2 of meerdere keren gebruik.
Of is het juist verstandig elke keer wanneer je deze nogmaals te berekenen.

vraag 1:
Code:
$str = "hello world";

$arr[] = substr($str,0,strpos($str,"l"));
$arr[] = substr($str,strpos($str,"l"));

of 

$str = "hello world";
$pos = strpos($str,"l");

$arr[] = substr($str,0,$pos);
$arr[] = substr($str,$pos);

Voor beide oplossing zijn voor- en nadelen.
Extra variable:
Voordeel : Het systeem dient niet elke keer op niet een berekening uit te voeren en kan de waarde uit het geheugen halen.
Nadeel : Het systeem dient na het beindigen van de class een extra variable te verwijderen(garabagde collector);

Berekening
Voordeel : De berekening blijft adequate (indien de string aangepas wordt). Geen extra variable te verzinnen dus geen geheugen plaats te reseveren
Nadeel : Het systeem blijft de berekening doen.

Het kan heel goed zijn dat het syteem in het achtergrond process al een variable.

Persoonlijk denk dat performance technische gezien de oplossing van een extra variable de oplossing is. Het systeem dient dan niet elke keer de berekening
te doen. Zover ik in kan schatten: Heeft Php goede garbage collector inzich. Toch wil ik jullie antwoord op deze vraag. Mijn voorkeur gaat echter naar
de berekening technische kant omdat in code dan zien wat ik aan het doen ben en niet de variable dient te onthouden. In voorbeeld code is dit niet nodig dat
zie je in 1 oog opslag maar het komt regelmatig voor dat de variable boven in de klas staan. Hier gelijk ook een korte vraag over.

Vraag 2:
Is het verstandig om alle gebruikte variable boven in de class van php te declareren in het oogpunt tot performance of maakt het voor het systeem niet geheel
uit als je nogmaals een "nieuwe variable aanmaakt" midden in de code.Zelfs zet ik alle mijn variable boven in de functie (indien ik deze altijd gebruik, bij
variable gebruik maak ik ze alleen aan indien nodig).
 
Ik denk dat tenzij je echt miljoenen bezoekers per dag op je website hebt of dit een miljoen keer per page request doet, je het verschil niet eens merkt gezien. Zou me verbazen als het verschil een microseconde is, vermoed dat het nog minder is dan dat.

De tweede is wel sneller, maar ik zou persoonlijk kiezen voor de meest leesbare optie en niet de snelste.

Vraag 2 maakt niks uit. Beide doen hetzelfde en kosten dezelfde tijd.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan