28 lines
932 B
PHP
28 lines
932 B
PHP
<?php
|
|
namespace Module\ACM\Classe\Classe\GestionDate;
|
|
use DateTime;
|
|
|
|
/** Permet la verification de la conformité des dates et des jours*/
|
|
class GestionJour {
|
|
public function jourEstDansLaPeriode(GestionPeriode $periode, DateTime $date) : bool {
|
|
return $periode->jourDansPeriode($date);
|
|
}
|
|
public function jourCorrespondAuBonNombre (string $jour, DateTime $date) : bool {
|
|
$tab = ["lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi", "dimanche"];
|
|
return $tab[((int)$date->format("N")) + 1]==$jour;
|
|
}
|
|
public function getLundiSemaine(DateTime $date = null) : DateTime {
|
|
if ($date == null) {$date = new DateTime();}
|
|
if ($date->format("N") != "1") {
|
|
$date->modify("-1 day");
|
|
return $this->getLundiSemaine($date);
|
|
}
|
|
return $date;
|
|
}
|
|
public function getPremierJourDuMois(DateTime $date = null) {
|
|
if ($date == null) {$date = new DateTime();}
|
|
return new DateTime($date->format("Y-m")."-1");
|
|
}
|
|
|
|
}
|