'20170831172237633101'この形式おそらくYmdHisuで表示しているものを下の構文で出力される形式にしたいのですがそういったことは可能でしょうか
$timestamp = explode('.', microtime(true));
array(2) { [0]=> string(10) "1501750440" [1]=> string(4) "4371" }
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
エスパー回答ですw
時間系の操作からも外れますが、決め打ちです!
php
1<?php 2$t = '20170731141935643305'; 3preg_match('/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d*)/',$t,$m); 4array_shift($m); 5echo join('.',$m);//2017.07.31.14.19.35643305
修正回答
質問が修正されたので、回答も修正^^
php
1<?php 2$microtime = microtime(true); 3echo 'microtime(org):'.$microtime.PHP_EOL; 4$date_org = DateTime::createFromFormat('U.u', number_format($microtime, 6, '.', '')); 5$date_a = $date_org->format('YmdHisu'); 6echo 'YmdHisu?:'.$date_a.PHP_EOL; 7$date_b = DateTime::createFromFormat('YmdHisu',$date_a); 8$date_c = number_format($date_b->format('U.u'), 4, '.', ''); 9echo 'microtime:'.$date_c.PHP_EOL; 10$timestamp = explode('.', $date_c); 11// $timestamp[1] = sprintf('%04d',round($timestamp[1]/100)); 12var_dump($timestamp);
強引だったところを修正しました^^;
microtime(org):1501816740.2671 YmdHisu?:20170804031900267112 microtime:1501816740.2671 array(2) { [0]=> string(10) "1501816740" [1]=> string(4) "2671" }
投稿2017/08/03 08:59
編集2017/08/04 03:20
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

退会済みユーザー
2017/08/03 09:12

退会済みユーザー
2017/08/03 10:25

0
ベストアンサー
microtime(true)はUnix タイムスタンプ マイクロ秒形式で出力されるのでそういった形式にするならこうですね。
$form_date = '対象フォーマット';//おそらくYmdHisu形式 $conve_date = date_create_from_format('YmdHisu', $form_date); $uu_date = date_format($conve_date, 'U.u');
投稿2017/08/03 10:27
総合スコア73
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

退会済みユーザー
2017/08/04 00:41

退会済みユーザー
2017/08/04 02:50

退会済みユーザー
2017/08/04 03:22

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。