[alg] Slechtste programmeervoorbeelden deel 2 Vorige deelOverzichtVolgende deelLaatste deel

Pagina: vorige 1 ... 8 9 10 11 laatste

Reacties: 442
Reg. datum: 21-03-2002

quote:
Worteltaart schreef op vrijdag 20 juli 2007 @ 17:09:
Even een brainfart:
PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
public function CreateSaveObject()
    {
        $QueryBuilder = "INSERT INTO "$this->Tabelnaam ." (";
        for($i = 0$i < (sizeof($this->VeldenArray) - 1); $i++)
        {
            $QueryBuilder .= $this->VeldenArray[$i] .', ';
        }
        $QueryBuilder .= $this->VeldenArray[(sizeof($this->VeldenArray) - 1)];
        $QueryBuilder .= ') VALUES (';
        for($i = 0$i < (sizeof($this->VeldenArray) - 1); $i++)
        {
            $QueryBuilder .= '\'".$this->'.$this->VeldenArray[$i].'."\', ';
        }
        $QueryBuilder .= '\'".$this->'.$this->VeldenArray[(sizeof($this->VeldenArray) - 1)].'."\')';
        
        echo $QueryBuilder;
    }
?>


Net uit zitten poepen, leuk voor de volgende 8)7
De sizeof methode in PHP heeft complexiteit O(n), dus door deze elke keer aan te roepen versplil je de nodige CPU cycles. Over het algemeen kun je beter (qua performance dan iig...) de for-loops over arrays omschrijven naar:
PHP:

1
2
3
4
<?php
$arr = array(1,2,3);
for($i = 0$s = sizeof($arr); $i < $s$i++) {
  // do things on array
}
?>

Een uitzondering is uiteraard als je binnen de loop elementen uit de array verwijdert. In jouw voorbeeld hierboven kun je beter in de method scope eenmalig de size in een variabele opslaan. Nog beter is de juiste PHP methodes gebruiken:

PS: Om te mierenneuken, leer je aan om de single quotes te gebruiken waar double quotes niet nodig zijn voor een string. In theorie zou dit efficienter moeten kunnen zijn (heb nog nooit getest eigenlijk...).

narotic wijzigde deze reactie 21-07-2007 15:56 (9%)

- = Step Into The Pit | Industrial Strength = -

Reacties: 50.747
Reg. datum: 25-02-2004

Omines - Snel en gratis juridisch advies
Standeman: Ik wil mijn ballen ook wel doneren hoor, ik doe er toch ook niets meer mee.

Pagina: vorige 1 ... 8 9 10 11 laatste



Dit topic is gesloten.

Let op:
Uiteraard is het in dit topic niet de bedoeling dat andere users en/of topics aangehaald worden om ze voor gek te zetten. Lachen om je eigen code, of over dingen die je "wel eens tegengekomen bent" is prima, maar hou het onderling netjes. :)

Het is hier ook niet het "korte vraagjes" topic. Zie deze post


© 1998 - 2013 Tweakers.net B.V. Contact Over Tweakers Jouw privacy Algemene voorwaarden Cookies

Tweakers wordt uitgegeven door De Persgroep en wordt gehost door True

Website van het jaar 2012