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

abirgl Messages postés 127 Date d'inscription   Statut Membre Dernière intervention   -  
 Anonyme -
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

Anonyme
 
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