Example #1
0
 * This file is part of the PHPReboot/Stopwatch package.
 *
 * (c) Kapil Sharma <*****@*****.**>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
/*
 * The example shows how to pause the timer for measuring time at different stages.
 * Once watch is started, we can call `pause` method to pause the watch.
 * If watch is paused, we can start it again to start timer. In that case, time will be added to timer.
 */
// Load Composer auto loader
require_once "../vendor/autoload.php";
use Phpreboot\Stopwatch\StopWatch;
// Create an instance of StopWatch
$stopWatch = new StopWatch();
$innerIterator = 0;
for ($i = 1; $i <= 10; $i++) {
    printf("Iteration %d starting.\n", $i);
    $stopWatch->start();
    for ($j = 0; $j < 1000; $j++) {
        $innerIterator++;
    }
    $stopWatch->pause();
    printf("Iteration %d watch stopped, not other task is starting..\n", $i);
    for ($k = 0; $k < 1000; $k++) {
        $timeWaster = $k;
    }
}
printf("Time taken by first loop (\$j), for %d iterations was: %f seconds.\n", $innerIterator, $stopWatch->getTime());
Example #2
0
 *
 * (c) Kapil Sharma <*****@*****.**>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
/*
 * This example shows simple use of Stopwatch. For simple use, we need just four steps:
 *   - Create instance of StopWatch,
 *   - Call `start()` method to start the timer,
 *   - Call `stop()` method to stop the watch, and
 *   - Call `getTime()` method to get the time between start and stop.
 */
// Load Composer auto loader
require_once "../vendor/autoload.php";
use Phpreboot\Stopwatch\StopWatch;
// Create an instance of StopWatch
$stopWatch = new StopWatch();
// Start the watch to start timer,
$stopWatch->start();
$iteration = 0;
for ($i = 0; $i < 10000; $i++) {
    for ($j = 0; $j < 10000; $j++) {
        $iteration++;
    }
}
// Stop the watch.
$stopWatch->stop();
// By default, it will return time in seconds
$time = $stopWatch->getTime();
printf("Time taken for %d iterations was %f seconds.\n", $iteration, $time);
Example #3
0
 */
/*
 * This example shows using multiple stop watches in the same program.
 * If we want to use multiple watches, we must provide unique name all of them.
 * Steps involved are:
 *   - Add watches by any of following methods
 *     - Call `addWatch` multiple times, with name of watch as parameter, or
 *     - Call `addWatches` and pass an array of name of watches as parameter.
 *   - Further operation is same as in `simplewatch` and `pauseDemo` example. However this time, we need to pass
 *     watch name to all the methods.
 */
// Load Composer auto loader
require_once "../vendor/autoload.php";
use Phpreboot\Stopwatch\StopWatch;
// Create an instance of StopWatch
$stopWatch = new StopWatch();
// Initialize the watches.
$stopWatch->addWatches(["a", "b", "c"]);
// We could also use '$stopWatch->addWatch("name")' individually.
$operatorA = 0;
$operatorB = 0;
$operatorC = 0;
for ($i = 1; $i <= 10; $i++) {
    // Following code block represent one operation, which needs to be measured.
    $stopWatch->start("a");
    for ($a = 0; $a < 10000; $a++) {
        $operatorA++;
    }
    $stopWatch->pause("a");
    // Following code block represent another operation, which needs to be measured separately.
    $stopWatch->start("b");
<?php

namespace Phpreboot\performance\basic\quote;

include_once 'vendor/autoload.php';
use Phpreboot\Stopwatch\StopWatch;
// Create an instance of StopWatch
$stopWatch = new StopWatch();
// Initialize the watches.
$stopWatch->addWatches(["single", "double"]);
$stopWatch->start("single");
$nameSingleQuote = 'Kapil Sharma';
$stopWatch->stop("single");
$stopWatch->start("double");
$nameDoubleQuote = "Kapil Sharma";
$stopWatch->stop("double");
printf("Single quotes took %f seconds \n", $stopWatch->getTime("single"));
printf("Double quotes took %f seconds \n", $stopWatch->getTime("double"));
Example #5
0
 /**
  * @group Phpreboot_Stopwatch_StopWatch_stop
  */
 public function testNonExistingStopWatchCanNotBeStopped()
 {
     $this->assertFalse($this->stopWatch->stop('nonExistingWatch'));
 }