par
xTG » 05 déc. 2013, 16:59
Topic auquel j'avais participé mais le résultat n'est pas fait à partir de PHP mais du SGBD, en l’occurrence dans son cas grâce à SQLite.
Mais il n'a pas donné suite.
Selon moi il n'existe pas de fonction fournie par PHP pour faire cela car il ne gère en opération que des secondes (timestamp est son plus bas niveau).
Après tu peux très bien avoir d'autres unités mais pas mélangées entre elles.
Il sait soustraire des microsecondes pour peu qu'il n'y ai que cela dans la variable en gros.
function ecart_qualif($arg1,$arg2){
list($mn_sc_1a, $ml_1) = explode(',', $arg1);
list($mn_1, $sc_1) = explode(':', $mn_sc_1a);
list($mn_sc_2a, $ml_2) = explode(',', $arg2);
list($mn_2, $sc_2) = explode(':', $mn_sc_2a);
$ecart_millisecondes = $ml_2 - $ml_1;
$ecart_secondes = $sc_2 - $sc_1;
$ecart_mn = $mn_2 - $mn1;
return $ecart_mn . ':' . $ecart_secondes . ',' . $ecart_millisecondes;
}
Voilà la base en gros (non testé), il resterai je pense à gérer les retenues inversées.
[quote="zika"]j'ai trouvé ce post:
http://www.developpez.net/forums/d1071193/php/langage/debuter/soustraction-temps-millieme-seconde/[/quote]
Topic auquel j'avais participé mais le résultat n'est pas fait à partir de PHP mais du SGBD, en l’occurrence dans son cas grâce à SQLite.
Mais il n'a pas donné suite. :)
Selon moi il n'existe pas de fonction fournie par PHP pour faire cela car il ne gère en opération que des secondes (timestamp est son plus bas niveau).
Après tu peux très bien avoir d'autres unités mais pas mélangées entre elles.
Il sait soustraire des microsecondes pour peu qu'il n'y ai que cela dans la variable en gros.
[php]function ecart_qualif($arg1,$arg2){
list($mn_sc_1a, $ml_1) = explode(',', $arg1);
list($mn_1, $sc_1) = explode(':', $mn_sc_1a);
list($mn_sc_2a, $ml_2) = explode(',', $arg2);
list($mn_2, $sc_2) = explode(':', $mn_sc_2a);
$ecart_millisecondes = $ml_2 - $ml_1;
$ecart_secondes = $sc_2 - $sc_1;
$ecart_mn = $mn_2 - $mn1;
return $ecart_mn . ':' . $ecart_secondes . ',' . $ecart_millisecondes;
}[/php]
Voilà la base en gros (non testé), il resterai je pense à gérer les retenues inversées.