IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Optimisation du code avec des boucles


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut [PHP-JS] Optimisation du code avec des boucles
    Bonjour bonjour,
    je voudrais optimiser le code d'un script que j'ai créé.
    Ma page met 5 6 secondes avant de faire toutes les boucles et je dois reprendre le même script pour faire des testes encore plus poussés (en gros l même script x 6 7 boucles donc bon ça rame est dépasse les 30 sec d'excutions et je me fais rejeté).

    J'ai 5 grosses boucles qui contiennent d'autres boucles (j'ai limité les casses avec des SWITCH mais pour mes grosses boucles je ne vois pas comment m'y prendre. J'ai fait avec des if mais bon ça fait des testes inutiles. prendre des break?

    voilà mes testes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if (($result[3] >= $annee."-".$mois."-01") AND ($result[3] <= $annee."-".$mois."-31"))
     
    if (($annee_DE == $deuxieme_cotisation) AND ($annee_DE == $annee))
     
    if ($annee_DE < (substr($resultCotisation[2],0,4)) AND (substr($resultCotisation[2],0,4)== $annee))
     
    if ($resultMoisRestant[2]=='0000-00-00')
     
    if (($date_modifiee >= $annee."-".$mois."-01") AND ($date_modifiee <= $annee."-".$mois."-31"))
    merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Déjà, il y a une méthode a avoir.
    Trouve toi un ptit script qui affiche des temps d'excution (google est ton ami), et trouve quels sont les portions qui posent le plus de problème. Si tu as du bol, ce sera une boucle en particulier, tu pourras donc concentrer des efforts dessus.

    Ensuite, de part mon experience personnelle en optimisation, quand on a beacoup de boucle, ce qui est long, ce n'est pas les tests, qui sont, pris unitairement très rapide, mais le nombre d'itération. Il y a souvent moyen, en repensant un peu ce qu'on veut faire, ou en gérant quelques cas supplémentaire de supprimer pas mal d'itération.
    Du genre, tu as trouvé ce que tu cherche, tu sort avec un "continue", ca t'épargne tous les tests suivant.
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  3. #3
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    ok ok je vais voir pour le temps d'execution.
    par contre, il n'y a pas une histoire avec les break 1 break 2 ?

    si je passe dans ma premiere boucle alors ce n'est pas utile de passer dans la 2eme, 3eme

  4. #4
    Membre éprouvé
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Points : 959
    Points
    959
    Par défaut
    Bonjour
    un peu dans le meme sens d'idée que Rakken
    Si tu mets des if, donc il va passer toutes les conditions même s'il répond à la première...
    si c'est le but, je m'excuse pour cette intervention, sinon, utilise des if, else if, else if, else
    La perfection n'est pas un but, l'amélioration constante devrait l'être!
    La position des Développeurs de developpez avec les explications

Discussions similaires

  1. Optimisation code avec une boucle For
    Par latour500 dans le forum jQuery
    Réponses: 7
    Dernier message: 11/04/2014, 15h02
  2. [Débutant] Simplification d'un code avec des boucles
    Par abel413 dans le forum MATLAB
    Réponses: 5
    Dernier message: 14/06/2013, 17h12
  3. [XL-2003] Optimisation de code avec les noms des CheckBox
    Par brownthefou dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 26/04/2012, 14h52
  4. [MySQL] Optimiser une requête avec des tableaux PHP ?
    Par Khleo dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/11/2011, 15h49
  5. optimiser mon code avec une boucle for?
    Par Invité dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 16/11/2007, 08h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo