web-dev-qa-db-fra.com

Essayer d'utiliser PHP DateTime Classe avec erreurs Yii2 de réception de classe non trouvée

Bonjour, j'essaie de créer ma propre classe d'assistance personnalisée à utiliser avec Yii2. Il va gérer les temps donc je vais travailler avec la classe DateTime de PHP. j'ai

<?php

namespace yii\helpers;

use Yii;

class Time
{
    public static function getTime()
    {  
    $time = new DateTime('now', new DateTimeZone('UTC'));
    return $time->format('m-d-Y H:i:s');
    }
}

Pour le tester, j'ai ajouté use yii\helpers\Time; dans un fichier de vue appelé Time::getTime(); mais Yii2 lève une erreur ErrorException indiquant que la classe 'yii\helpers\DateTime' est introuvable.

L'objet DateTime php fonctionne correctement si je place le code directement dans un fichier d'affichage et que je l'exécute, de sorte que je ne suis pas sûr de mon problème.

21
slick1537

Mettez une barre oblique inverse dans le nom de la classe pour indiquer qu'il se trouve dans l'espace de noms global:

$time = new \DateTime('now', new \DateTimeZone('UTC'));
44
John Conde

Ajouter use pour DateTime:

use Yii;
use DateTime;

Voir utiliser "espace de noms global";

0
Anton Rybalko