<?php
class MyCounter extends Counter
{
public function printCounterInfo() {
printf("Counter's name is '%s' and is%s persistent. Its current value is %d.\n",
$this->getMeta(COUNTER_META_NAME),
$this->getMeta(COUNTER_META_IS_PERSISTENT) ? '' : ' not',
$this->value);
}
}
Counter::setCounterClass("MyCounter");
if (($counter_one = Counter::getNamed("one")) === NULL) {
$counter_one = new Counter("one", 0, COUNTER_FLAG_PERSIST);
}
$counter_one->bumpValue(2); // we aren't allowed to "set" the value directly
$counter_two = new Counter("two", 5);
$counter_three = Counter::getNamed("three");
$counter_four = new Counter("four", 2, COUNTER_FLAG_PERSIST | COUNTER_FLAG_SAVE | COUNTER_FLAG_NO_OVERWRITE);
$counter_four->bumpValue(1);
$counter_one->printCounterInfo();
$counter_two->printCounterInfo();
$counter_three->printCounterInfo();
$counter_four->printCounterInfo();
?>