回答編集履歴

3

修正

2017/08/04 03:20

投稿

退会済みユーザー
test CHANGED
@@ -32,22 +32,44 @@
32
32
 
33
33
  $date_a = $date_org->format('YmdHisu');
34
34
 
35
- echo 'YmdHisu:'.$date_a.PHP_EOL;
35
+ echo 'YmdHisu?:'.$date_a.PHP_EOL;
36
36
 
37
37
  $date_b = DateTime::createFromFormat('YmdHisu',$date_a);
38
38
 
39
- $date_c = $date_b->format('U.u');
39
+ $date_c = number_format($date_b->format('U.u'), 4, '.', '');
40
40
 
41
41
  echo 'microtime:'.$date_c.PHP_EOL;
42
42
 
43
43
  $timestamp = explode('.', $date_c);
44
44
 
45
- $timestamp[1] = sprintf('%04d',round($timestamp[1]/100));
45
+ // $timestamp[1] = sprintf('%04d',round($timestamp[1]/100));
46
46
 
47
47
  var_dump($timestamp);
48
48
 
49
49
  ```
50
50
 
51
- ちょっと最後強引だけど^^;
51
+ 強引だったところを修正しました^^;
52
+
53
+ ```
54
+
55
+ microtime(org):1501816740.2671
56
+
57
+ YmdHisu?:20170804031900267112
58
+
59
+ microtime:1501816740.2671
60
+
61
+ array(2) {
62
+
63
+ [0]=>
64
+
65
+ string(10) "1501816740"
66
+
67
+ [1]=>
68
+
69
+ string(4) "2671"
70
+
71
+ }
72
+
73
+ ```
52
74
 
53
75
 

2

修正

2017/08/04 03:20

投稿

退会済みユーザー
test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
  $date_a = $date_org->format('YmdHisu');
34
34
 
35
- echo 'YmdHisu'.$date_a.PHP_EOL;
35
+ echo 'YmdHisu:'.$date_a.PHP_EOL;
36
36
 
37
37
  $date_b = DateTime::createFromFormat('YmdHisu',$date_a);
38
38
 

1

修正

2017/08/03 10:34

投稿

退会済みユーザー
test CHANGED
@@ -15,3 +15,39 @@
15
15
  echo join('.',$m);//2017.07.31.14.19.35643305
16
16
 
17
17
  ```
18
+
19
+ **修正回答**
20
+
21
+ 質問が修正されたので、回答も修正^^
22
+
23
+ ```php
24
+
25
+ <?php
26
+
27
+ $microtime = microtime(true);
28
+
29
+ echo 'microtime(org):'.$microtime.PHP_EOL;
30
+
31
+ $date_org = DateTime::createFromFormat('U.u', number_format($microtime, 6, '.', ''));
32
+
33
+ $date_a = $date_org->format('YmdHisu');
34
+
35
+ echo 'YmdHisu'.$date_a.PHP_EOL;
36
+
37
+ $date_b = DateTime::createFromFormat('YmdHisu',$date_a);
38
+
39
+ $date_c = $date_b->format('U.u');
40
+
41
+ echo 'microtime:'.$date_c.PHP_EOL;
42
+
43
+ $timestamp = explode('.', $date_c);
44
+
45
+ $timestamp[1] = sprintf('%04d',round($timestamp[1]/100));
46
+
47
+ var_dump($timestamp);
48
+
49
+ ```
50
+
51
+ ちょっと最後強引だけど^^;
52
+
53
+