Autor | Zpráva | ||
---|---|---|---|
Exkalibr Profil * |
#1 · Zasláno: 11. 3. 2020, 08:43:41
Na Windows XP, PHP Version 5.4.16 mám problém, že mi nejde změřit čas s přesností na mikrosekundy. Mám sice funkci,
function microtime_float() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } |
||
Kajman Profil |
#2 · Zasláno: 11. 3. 2020, 10:13:49
I kdyby jste našel chybu v php 5.4, tak ta verze není pět let podporovaná, nikdo tam už chybu neopraví a nedává smysl pro ni programovat. Nikdo rozumný si ji na server nenasadí.
Zkuste si vypsat, co vrací microtime jako string. Tipnul bych, že tam bude více míst, ale přijde se o ně tím sčítáním s velkým počtem sekund a narazí se na omezení dané přesností floatu. Pokud tomu tak je, tak si můžete vracet zvlášť počet sekund a zvlášť desetinnou část. Při porovnání času pak odečíst sekundy od sebe (tím tam nebude takové velké číslo a zbyde místo na další cifry na konci) a pak teprve k tomu přičíst a odečíst desetinné části. www.php.net/manual/en/language.types.float.php |
||
Keeehi Profil |
#3 · Zasláno: 11. 3. 2020, 11:27:22
Kajman:
„I kdyby jste našel chybu v php 5.4, tak ta verze není pět let podporovaná, nikdo tam už chybu neopraví a nedává smysl pro ni programovat. Nikdo rozumný si ji na server nenasadí.“ A to samé samozřejmě platí i pro Windiws XP. |
||
Exkalibr Profil * |
#4 · Zasláno: 11. 3. 2020, 14:31:48
Keeehi:
Tak logicky, když mám Windows XP, wamp 2.4 tak jinou vyšší nenainstaluji. |
||
Kajman Profil |
#5 · Zasláno: 11. 3. 2020, 14:50:50
Tak logicky nedává smysl něco vyvíjet na zastaralé a nepodporované sw základně. Ani u ní řešit milisekundy natož mikrosekundy.
|
||
Exkalibr Profil * |
Kajman:
Tobě to jakožto nezasvěcenému smysl dávat nemůže. Mám své důvody, proč to tak je a proč to tak zůstane. function microtime_arr(&$sec, &$usec) { list($usec, $sec) = explode(" ", microtime()); return array($sec, $usec); } Dík |
||
Časová prodleva: 4 roky
|
0