Bonjour,
Je pratique le PHP depuis quelques années, je n'ai encore jamais été confronté à de tels cas.
Peut-être parce que je me penche rarement sur le temps mis par mes scripts pour s’exécuter.
Selon les codes suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $start = microtime(true); $this->_part = MVCpart::namedPart($part_name); echo "externe : ".(microtime(true) - $start);J'observe des temps interne et externes différents. Et la différence n'est pas des moindres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 // Dans la classe MVCpart public static function namedPart($part_name){ $start = microtime(true); $search_data = new RecordData(array ( "SYSTEM"=>new PartData(array ( "p_id"=>$part_name )) )); $result = NULL; $classe = get_called_class(); try { $search_result = self::getDD($classe)->search($classe, $search_data); if (is_object($search_result) && $search_result->size() > 0){ $results_entryList = $search_result->keySet(); $result = new MVCpart ($results_entryList[0]); } } catch (Exception $e){ echo $e->getTraceAsString(); } echo "interne : ".(microtime(true) - $start); return $result; }
Il est difficile à croire que l'empilement/dépilement soit responsable de cette différence.
interne : 0.0055050849914551
externe : 0.13650298118591
Dans un premier temps, je souhaiterais trouver ce qui n'est pas bon dans mon chronométrage.
Dans un deuxième temps et si possible, je pourrais donner plus de détails sur le code pour trouver ce qui coute tellement en temps.
Merci par avance et bon dimanche.
Partager