phpbar.de logo

Mailinglisten-Archive

[php] Zaehlerproblem

[php] Zaehlerproblem

Steffen Kother steffen.kother at gmx.net
Die Feb 22 15:21:21 CET 2005


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