CakeTime
-
class CakeTime
Si vous avez besoin de fonctionnalités TimeHelper
en-dehors
d’une View
, utilisez la classe CakeTime
:
class UsersController extends AppController {
public $components = array('Auth');
public function afterLogin() {
App::uses('CakeTime', 'Utility');
if (CakeTime::isToday($this->Auth->user('date_of_birth']))) {
// greet user with a happy birthday message
$this->Session->setFlash(__('Happy birthday you...'));
}
}
}
Nouveau dans la version 2.1: CakeTime
a été créé à partir de TimeHelper
.
Tester Time
-
CakeTime::isToday($dateString, $timezone = NULL)
-
CakeTime::isThisWeek($dateString, $timezone = NULL)
-
CakeTime::isThisMonth($dateString, $timezone = NULL)
-
CakeTime::isThisYear($dateString, $timezone = NULL)
-
CakeTime::wasYesterday($dateString, $timezone = NULL)
-
CakeTime::isTomorrow($dateString, $timezone = NULL)
-
CakeTime::isFuture($dateString, $timezone = NULL)
Nouveau dans la version 2.4.
-
CakeTime::isPast($dateString, $timezone = NULL)
Nouveau dans la version 2.4.
-
CakeTime::wasWithinLast($timeInterval, $dateString, $timezone = NULL)
Modifié dans la version 2.2: Le paramètre $timezone
remplace le paramètre $userOffset
utilisé
dans 2.1 et suivants.
Nouveau dans la version 2.2: Le paramètre $dateString
accepte aussi maintenant un objet DateTime.
Toutes les fonctions ci-dessus retourneront true ou false quand une chaîne
de date est passé. wasWithinLast
prend une option supplémentaire
$time_interval
:
// Appelé avec TimeHelper
$this->Time->wasWithinLast($time_interval, $dateString);
// Appelé avec CakeTime
App::uses('CakeTime', 'Utility');
CakeTime::wasWithinLast($time_interval, $dateString);
wasWithinLast
prend un intervalle de time qui est une chaîne au format
« 3 months » et accepte un intervalle de time en secondes, minutes, heures,
jours, semaines, mois et années (pluriels ou non). Si un intervalle de time
n’est pas reconnu (par exemple, si il y a une faute de frappe) ensuite
ce sera par défaut à days.