Les Allergies
Alimentaires
Posez votre question Signaler

Problème de Modulo e division en PHP

MakubeX - Dernière réponse le 4 mai 2009 à 08:38
Bonjour,
je dois actuelement faire une page web dans laquel je fais des calcule de temps avec timestamp.
les valeurs sont donc des temps époque depuis le 1 sep 1970.
Le souci c'est que quand je met
<?php
echo " 123814741090 / 8640000 " .
?>
La page me retourne 14330.4098484 alors que ma calculette me donne 14330,40985
D'ou vient le problème ?
Merci de votre réponse
Lire la suite 

Problème de Modulo e division en PHP »

3 réponses
Réponse
+0
moins plus
Y'a pas de problème là-dedans...

Ta calculatrice a arrondi la valeur.
La calculatrice de linux retourne 14330,40984838
MakubeX - 3 mai 2009 à 23:50
Merci de ta réponse autre petite question

avec se temps époque j'utilisé la fonction

<?php

$temps_passage = 123814741072;

$nbre_centiemes = $temps_passage%100;
$nbre_secondes = ($temps_passage - $nbre_centiemes) / 100;
$nbre_minutes = $nbre_secondes / 60;
$nbre_minutes = $nbre_minutes%60;
$nbre_heures = $nbre_secondes / 3600;
$nbre_heures = $nbre_heures%60;
$reste_secondes = $nbre_secondes%60;

echo "<br>";

echo $nbre_heures."h ".$nbre_minutes." mn ".$reste_secondes." sec ".$nbre_centiemes;


?>

Et la il me renvoi 9h 50 mn 11 sec -12 un peu embetant la valeur de centieme en négatif

Sinon existe t-il une fonction qui me donne directement avec 123814741090 la valeur de temps sans la date ?

Merci de votre réponse
Ajouter un commentaire
Réponse
+0
moins plus
En effet, le résultat du modulo est erroné, cela vient du fait que le nombre est trop grand pour etre traité de manière standard.

Si par chance la lib bcmath est dispo sur ton serveur, alors c'est ce qu'il te faut.
http://fr.php.net/manual/fr/ref.bc.php
Ajouter un commentaire
Ce document intitulé « Problème de Modulo e division en PHP » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?