public function pop()
    {
        if (! ($this->_idx > 0)) {
            throw new Exception('No timers have been started');
        }
        $start = $this->_start[--$this->_idx];
        return array(
            memory_get_usage() - $start[0],
            memory_get_peak_usage() - $start[1],
            memory_get_usage(true) - $start[2],
            memory_get_peak_usage(true) - $start[3]
        );
    }
public function pop()
    {
        if (! ($this->_idx > 0)) {
            throw new Exception('No timers have been started');
        }
        $start = $this->_start[--$this->_idx];
        return array(
            memory_get_usage() - $start[0],
            memory_get_peak_usage() - $start[1],
            memory_get_usage(true) - $start[2],
            memory_get_peak_usage(true) - $start[3]
        );
    }
public function pop ( ) { if ( ! ( $ this -> _idx > 0 ) ) { throw new Exception ( 'No timers have been started' ) ; } $ start = $ this -> _start [ -- $ this -> _idx ] ; return array ( memory_get_usage ( ) - $ start [ 0 ] , memory_get_peak_usage ( ) - $ start [ 1 ] , memory_get_usage ( true ) - $ start [ 2 ] , memory_get_peak_usage ( true ) - $ start [ 3 ] ) ; }
Pop the latest tracker and return the difference with the current
memory situation.

@return array The change in memory allocated via emalloc() in between the
push() and the pop() call. The array holds four values: the
first one indicates the change in current usage of memory
while the second value indicates any changes in the peak
amount of memory used. The third and fourth value show
current and peak usage as well but indicate the real memory
usage and not just the part allocated via emalloc(),
Pop the latest tracker and return the difference with the current memory situation .