ホームページ >バックエンド開発 >PHPチュートリアル >2 つの時間関係に対応する配列を時系列に並べるにはどうすればよいでしょうか?
時間関係に対応する 2 つの配列、そのうちの 1 つは時間配列ですが、それを時系列に並べるにはどうすればよいですか?
$x=Array("2015-07-06 22:49:00",
"2015-07-06 23 :18:19"、
"2015-07-06 18:30:12"、
"2015-07-06 9:03:36"、
"2015-07-05 18:31:52");
($y は省略)
array_multisort($x,SORT_DESC,SORT_STRING,$y);
print_r($x);
出力は次のようになります:
Array ( [0] => 2015-07-06 9 : 03:36 [1] => 2015-07-06 23:18:19 [2] => 2015-07-06 18:30 : 12 [4] => 2015-07-05 18:31:52 )
遅いほど早いはずです!しかし、次の時間は順番に並べられていません。何が問題ですか? 答えてください
$x = Array( "2015-07-06 22:49:00", "2015-07-06 23:18:19", "2015-07-06 18:30:12", "2015-07-06 9:03:36", "2015-07-05 18:31:52"); foreach($x as $t) $r[] = strtotime($t);array_multisort($r, SORT_DESC, $x);print_r($x);
Array( [0] => 2015-07-06 23:18:19 [1] => 2015-07-06 22:49:00 [2] => 2015-07-06 18:30:12 [3] => 2015-07-06 9:03:36 [4] => 2015-07-05 18:31:52)
時間を 00:00:00 の形式に変更するだけですよね
時間を取得するために $time=date('G:i:s'); を使用しましたが、この形式は保証できません。date('G:i :s'); 出力が 00:00:00 形式になるようにするにはどうすればよいですか?形式ですよね?
2015-07-06 9:03:36 に変更するだけです
文字列比較を使用します
date('H:i:s')
取得した date('H :i:s') を使用します、
12 時より前の出力形式の前に 0 がありません、
変更方法date('H:i:s') 関数を使用して、常に出力ゼロが省略されないようにします。 00:00:00 の形式はどうですか?
冗談ですか?
H 24 時間形式、先頭に 00 から 23 が付きます