0

私はjavascriptストップウォッチを使用してゲームを作成し、結果をデータベースに入れています。私が今直面している問題は、ゲームのすべての段階の間の合計時間をどのように計算するかです。これが私のサンプルデータです:

$time_level1 = "00:00:24";
$time_level2 = "00:00:30";
$time_level3 = "00:00:32";
$time_level4 = "00:01:30";
$time_level5 = "00:20:15";
$time_level6 = "00:59:15";

$time_msec_level1 = "20";
$time_msec_level2 = "343";
$time_msec_level3 = "115";
$time_msec_level4 = "952";
$time_msec_level5 = "152";
$time_msec_level6 = "455";

これらのデータはすべてデータベースからロードされます。リーダーボードリストでは、時間とミリ秒の昇順で表示されるすべてのステージの合計時間内で、すべてのステージのすべての時間を表示する必要があるため、ミリ秒を分離しました。

  1. これらすべての変数の合計時間を計算し、それらを時間形式で表示する方法は?
  2. 複数のレコードから合計時間を昇順で並べ替える方法は?合計時間がデータベースに記録されていないため、すぐに昇順で注文することはできません。
4

1 に答える 1

0

解決しました。私が(lcの回答に基づいて)行っていることは、これらすべての文字列を合計秒数に変換してから、それらを時間形式として表示するように変換することです。また、問題なく昇順で並べ替えることができます。

最終的なコードは次のとおりです。

<?php
$time_level1 = "220";
$time_level2 = "300";
$time_level3 = "400";
$time_level4 = "500";
$time_level5 = "600";
$time_level6 = "700";

$totaltime = $time_level1 + $time_level2 + $time_level3 + $time_level4 + $time_level5 + $time_level6;

$time_level1 = sec2hms(200);
$time_level2 = sec2hms(300);
$time_level3 = sec2hms(400);
$time_level4 = sec2hms(500);
$time_level5 = sec2hms(600);
$time_level6 = sec2hms(700);
$totaltime = sec2hms($totaltime);

echo $time_level1."<br />";
echo $time_level2."<br />";
echo $time_level3."<br />";
echo $time_level4."<br />";
echo $time_level5."<br />";
echo $time_level6."<br />";
echo $totaltime;
?>

私は次のsec2hms関数を使用します: http://www.laughing-buddha.net/php/sec2hms

于 2013-01-02T10:37:46.753 に答える