Mailinglisten-Archive |
Hi @all,
wenn ich Funktionen/Abfragen starte, setze ich einen Zeitstempel beim
Starten und einen nach der Beendigung.
tracking::setStart('Connecting_server');
mysql::connect();
tracking::setStop('Connecting_server');
Problematisch ist es dann, wenn ploetzlich an einer anderen Stelle der
Marker verwendet wird. Dagegen wollte ich, sofern der Marker wieder
auftaucht, einen Zaehler verwenden. Mir fehlt dazu leider der Ansatz
zur Umsetzung.
Beide Werte von Start und Stop werden außerdem noch miteinander
verrechnet und in einem Array unter dem Marker abgelegt.
Wuerde mich über mgl. Ansaetze und Tipps freuen.
--
Mit freundlichen Grüßen / Kind regards
Steffen Kother
<code>
class tracking {
var $Start = array();
var $Stop = array();
var $LastAction = '';
var $TimeLastAction = array();
function setStart($action = '', $object = '') {
$start = microtime();
!$object ? $object = &$this : NULL;
!empty($object) ? $object->Start[$action] = $start : NULL;
return $start;
}
function setStop($action = '', $object = '') {
$stop = microtime();
!$object ? $object = &$this : NULL;
!empty($object) ? $object->Stop[$action] = $stop : NULL;
tracking::setTimeLastAction($action, &$object);
return $stop;
}
function setTimeLastAction($action = '', $object = '') {
!$object ? $object = &$this : NULL;
if (!empty($object)) {
$object->TimeLastAction[$action] =
number_format(($object->Stop[$action]-$object->Start[$action]), 4, ',',
'.');
$object->LastAction = $action;
}
}
}
php::bar PHP Wiki - Listenarchive