Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
af1ea1b5fd | ||
|
a4650f8710 |
@@ -15,15 +15,38 @@ class Carbon extends CarbonBase
|
||||
|
||||
public function __get($name)
|
||||
{
|
||||
switch (true) {
|
||||
case $name === 'half':
|
||||
switch ($name) {
|
||||
case 'half':
|
||||
return (int) ceil($this->month / static::MONTHS_PER_HALF);
|
||||
|
||||
case 'quarter_string':
|
||||
return sprintf('%dQ%d',$this->year,$this->quarter);
|
||||
|
||||
default:
|
||||
return parent::__get($name);
|
||||
}
|
||||
}
|
||||
|
||||
public function addHalf(): self
|
||||
{
|
||||
return $this->addHalves(1);
|
||||
}
|
||||
|
||||
public function addHalves(int $unit): self
|
||||
{
|
||||
return $this->addQuarters(2*$unit);
|
||||
}
|
||||
|
||||
public function subHalf(): self
|
||||
{
|
||||
return $this->subHalves(1);
|
||||
}
|
||||
|
||||
public function subHalves(int $unit): self
|
||||
{
|
||||
return $this->subQuarters(2*$unit);
|
||||
}
|
||||
|
||||
/**
|
||||
* Modify to the first occurrence of a given day of the week
|
||||
* in the current quarter. If no dayOfWeek is provided, modify to the
|
||||
@@ -35,7 +58,7 @@ class Carbon extends CarbonBase
|
||||
* @return static
|
||||
*/
|
||||
public function startOfHalf($dayOfWeek = null)
|
||||
{
|
||||
{
|
||||
return $this->setDate($this->year, $this->half * static::MONTHS_PER_HALF - 5, 1)->firstOfMonth($dayOfWeek);
|
||||
}
|
||||
|
||||
@@ -50,7 +73,7 @@ class Carbon extends CarbonBase
|
||||
* @return static
|
||||
*/
|
||||
public function endOfHalf($dayOfWeek = null)
|
||||
{
|
||||
{
|
||||
return $this->setDate($this->year, $this->half * static::MONTHS_PER_HALF, 1)->lastOfMonth($dayOfWeek);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user