2 votes

$date = new DateTime pour les anciennes versions de PHP

En utilisant le code ci-dessous, j'ai reçu une erreur et j'ai découvert que c'était lié au fait que mon serveur n'avait pas la dernière version de PHP :

$date = new DateTime('2000-01-01');
$date->add(new DateInterval('PT'.$a->metrics->duration.'S'));

L'erreur : Erreur fatale : Appel à une méthode non définie DateTime::add()

La question : Comment puis-je réaliser ce qui précède pour un serveur qui utilise PHP 5.2.17 ?

3voto

DavidS Points 1570

Vous pouvez utiliser strtotime() :

$date = strtotime ("2000-01-01");
$date = strtotime ("+900 seconds", $date); // adds 900 seconds to date

1voto

Cups Points 3929
$start = new DateTime() ;
$start->modify( '+900 seconds' ) ; 
var_dump( $start->format('h:i:s' ));

L'utilisation de modify devrait toujours fonctionner pour votre version, vous permettant de rester avec DateTime, cela fonctionne pour moi sur 5.2.6.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X