|
|
| Line 37: |
Line 37: |
|
| |
|
| === PHP microtime to MySQL timestamp === | | === PHP microtime to MySQL timestamp === |
| {{exclaim}} Lose the accuracy after conversion. Microtime ex: 1426299057.8639 will lost the numeric after point (.8639) after saved to {{kbd | key = TIMESTAMP}} type ex: 2015-03-14 10:10:57 (equals to 1426299057)
| | [[PHP microtime to MySQL timestamp]] |
| | |
| 1. Check the MySQL server's current time zone: {{kbd | key =<nowiki>show variables like '%time_zone%';</nowiki>}}<ref>[http://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html MySQL :: MySQL 5.7 Reference Manual :: 10.6 MySQL Server Time Zone Support]</ref>. It's also the timezone which the data with {{kbd | key = TIMESTAMP}} type stored. example output:
| |
| | |
| <pre>
| |
| Variable_name Value
| |
| system_time_zone CST
| |
| time_zone SYSTEM ## my SYSTEM timezone is Asia/Taipei
| |
| </pre>
| |
| | |
| 2. PHP codes ([http://ideone.com/iRy0fI online demo])
| |
| <pre>
| |
| //set the current timezone
| |
| date_default_timezone_set("Asia/Taipei");
| |
| | |
| $microtime = microtime(true);
| |
| //1426299057.8639
| |
| | |
| list($second, $numeric_after_point) = explode(".", $microtime);
| |
| //$second: 1426299057
| |
| //$numeric_after_point: 8639
| |
| | |
| $timestamp = date('Y-m-d H:i:s', $second);
| |
| //$timestamp: 2015-03-13 10:10:57
| |
| </pre>
| |
|
| |
|
| === time difference of two time values === | | === time difference of two time values === |