La fonction DateTime génère l'exception 'expects parameter 1 to

Fermé
abirgl Messages postés 127 Date d'inscription lundi 31 octobre 2016 Statut Membre Dernière intervention 20 juin 2017 - 6 mai 2017 à 14:06
 Anonyme - 6 mai 2017 à 14:40
Bonjour,
Je travaille avec la fonction DateTime et elle me retourne l'exception suivante : Uncaught exception 'Exception' with message 'DateTime::__construct(): expects parameter 1 to be string , object given in ...
J'ai testé ma fonction dans une page indépendante et ça fonctionne bien , je vous poste mon code afin de m'aider :
(Code de la fonction dans une page indépendante qui fonctionne bien )

<?php
function getFodec( $p, $bex, $dt)
{
$datelimite=new DateTime($dt);
$dateAujourdhui=new DateTime();
if (($bex==1) && (($datelimite) >= $dateAujourdhui) )
return 0;
else
return $p;
}

$rslt=getFodec(1, 1, '2017-08-15');
echo $rslt;
?>

ce code me retourne l'erreur indiquée, j'ai essayé même date_create et toujours le meme probleme

function getPourcentageFodecApplique($prcFodec , $BexFodec , $dtLimFodec)
{
$dateLimiteFodec= new DateTime($dtLimFodec);
$dateCourante=new DateTime();
if (($BexFodec==1) && ($dateLimiteFodec >= $dateCourante))
{
return 0;
}
else
{
return $prcFodec;
}
}



1 réponse

Bonjour,

L'erreur semble venir du type du paramètre $dtLimFodec lors de l'appel de la fonction getPourcentageFodecApplique, il ne doit pas s'agir d'une chaîne de caractères, d'où l'erreur.

Il faudrait donc vérifier le type de la variable passée en 3ème paramètre de la fonction lors de son appel.
1