Calcul sur heure

VSAB13
Invité n'ayant pas de compte PHPfrance

24 mai 2006, 09:52

BOnjour à tous

J'utilise la variable $heure=date("H:i") qui me donne l'heure (forme 08:30 par exemple)

Mais c'est l'heure du serveur qui n'est pas en France donc décalage d'une heure !

Comment retrancher ou ajouter 1 heure (pour avoir 07:30) à cette variable ?

Grand merci

Mammouth du PHP | 1353 Messages

24 mai 2006, 10:17

Bonjour,

Essaye d'ajouter la ligne :
setlocale (LC_ALL, 'fra');
avant d'appeler la fonction date().

vsab13
Invité n'ayant pas de compte PHPfrance

24 mai 2006, 10:48

Je vais essayer !


Grand merci

VSAB13
Invité n'ayant pas de compte PHPfrance

24 mai 2006, 12:08

Sans succès !

ViPHP
ViPHP | 3607 Messages

24 mai 2006, 12:30

tu peux tout simplement faire comme ça:
$heure=date("H:i");
$heure=((int)($heure[0].$heure[1])+1).":".$heure[3].$heure[4];
//ou -1 j'ai pas suivi le décalage dans quel sens

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

24 mai 2006, 13:20

tu peux tout simplement faire comme ça:
$heure=date("H:i");
$heure=((int)($heure[0].$heure[1])+1).":".$heure[3].$heure[4];
//ou -1 j'ai pas suivi le décalage dans quel sens
Et s'il est 23h et qu'on veut rajouter 3h il se passe quoi ? :roll:

Pour rajouter une heure à une date j'irais plutôt voir ici : http://fr.php.net/date
=> Exemple 3. Exemples avec date() et mktime()

ViPHP
ViPHP | 3607 Messages

24 mai 2006, 13:22

c'est vrai dsl j'avais pas réfléchi... :oops:

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

24 mai 2006, 13:49

il faut construire d'abord une date/temps comme tu veux et ensuite la formater H:i pour n'afficher que l'heure et les min.
Pour cela on utilise les fonctions mktime et date
//ici, on ajoute une heure à l'heure actuelle
$date  = mktime(date("H")+1, date("i"), date("s"), date("d"), date("m"), date("Y"));
$date  = date("H:i",$date);
echo $date;
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

24 mai 2006, 14:15

il faut construire d'abord une date/temps comme tu veux et ensuite la formater H:i pour n'afficher que l'heure et les min.
[...]
Ouais... ce qu'était marqué dans l'exemple linké 2 messages au dessus quoi... :?

VSAB13
Invité n'ayant pas de compte PHPfrance

24 mai 2006, 14:57

Merci à tous.