Time
Handle time values
Handle time values
Get total time from various inputs:
$totalTime = $this->get('time')
->addTime('1:15')
->addTime('2h')
->addSeconds(600);
// --> 02:25
You can give target time as a second parameter. Time can be in many formats: The given value is interpreted accordingly.
h:m:s $this->get('time','02:00');
Hour float $this->get('time',2.5);
Time -string $this->get('time','now');
You can create new eTime -object of time or timestamp with Field::getTime() -method.
$endTime = $Task->start_time->getTime()->addHours(2);
You can get reference to eTime -object of field value with Field::getTimeReference() method. Add 14 days to value in field:
$Task->start_time->getTimeReference()->addHours(2);
Or calling eTime methods directly through time field object:
$Task->start_time->addHours(2);
You can create a time and then change its value with modifier -methods:
Two hours from now is $this->get('time','now')->addHours(2);
Time + duration $this->get('time','02:15')->addTime('00:45'); // --> 03:00
Full hours $this->get('time','02:15')->setMinutes(0); // --> 02:00
Add multiple times $this->get('time')->addValues(time1,time2);
Add difference of two times $this->get('time')->addTimePeriod(start,end);
Subtract difference of two times $this->get('time')->subTimePeriod(start,end);
| Method | Return type | Description |
|---|---|---|
| setValue(value) | this | Set time from value. |
| clear() | this | Set time as 0. |
| Method | Return type | Description |
|---|---|---|
| addValue(value) | this | Add time from value. |
| addValues(value,value,...) | this | Add multiple values to time. |
| addTime(value) | this | Add time from value. |
| subtractTime(value) | this | Add time from value. |
| addTimePeriod(start,end) | this | Add difference from two time -values. |
| subtractTimePeriod(start,end) | this | Subtract difference from two time -values. |
| addHour() | this | Add 1 hour to time. |
| addMinute() | this | Add 1 minute to time. |
| addSecond() | this | Add 1 second to time. |
| addHours(int) | this | Add hours to time. |
| addMinutes(int) | this | Add minutes to time. |
| addSeconds(int) | this | Add seconds to time. |
| setHours(int) | this | Set time hours to given value. |
| setMinutes(int) | this | Set time minutes to given value. |
| setSeconds(int) | this | Set time seconds to given value. |
| addOverlap(min,max,start,end) | this | Count seconds from start-end that overlaps with min-max and add them to time. |
| Method | Return type | Description |
|---|---|---|
| isGiven() | bool | Return TRUE, if time has a value. |
| getTime([$showSeconds]) | string | Time in hh:m[:ss] format. (Seconds are shown if seconds > 0). $showSeconds: Force / deny to show seconds. |
| getHm() | string | Time in hh:mm |
| getHours() | int | Get h:m:s hours. |
| getMinutes() | int | Get h:m:s minutes. |
| getSeconds() | int | Get h:m:s seconds. |
| toHours() | float | Get time in hours. |
| toMinutes() | float | Get time in minutes. |
| toSeconds() | float | Get time in seconds. |
| Compare to other time | Return type | Description |
|---|---|---|
| isSame(time,[unit]) | bool | TRUE, if time is same as given time. |
| isUnder(time,[unit]) | bool | TRUE, if date is before given date. |
| isUnderOr(time,[unit]) | bool | TRUE, if date is before or the given date. |
| isOver(time,[unit]) | bool | TRUE, if date is after given date. |
| isOverOr(time,[unit]) | bool | TRUE, if date is after or the given date. |
| isBetween(time,time,[unit]) | bool | TRUE, if date is between or a given date. |
| Comparison value | Return type | Description |
|---|---|---|
| getDayValue() | int | Comparison value in accuracy of full days. |
| getHourValue() | int | Comparison value in accuracy of full hours. |
| getMinuteValue() | int | Comparison value in accuracy of full minutes. |
| getSecondValue() | int | Comparison value in accuracy of second. |
| Method | Return type | Description |
|---|---|---|
| ::getOverlap($min,$max,$start,$end) | int | Count seonds from start-end that overlaps with min-max. |
| ::getTimeArrayFrom($val) | array | Get Array(h,m,s) from given time value. |
| ::getSecondsFrom($val) | int | Get seconds from given time value. |
| ::getMinutesFrom($val) | int | Get minutes from given time value. |
| ::getTimeFromSeconds($sec) | string | Seconds to hh:mm:ss |
| ::getSecondsFrom(value) | int | Get seconds from various time formats. See setValue() |
| ::hoursToTime($hours) | string | Hours to hh:mm:ss |