バックエンド アプリケーションを開発する場合、時間情報をより適切に表示するために、合計秒数を時、分、秒の形式に変換する必要があることがよくあります。 PHP 言語では、いくつかの簡単なコードを使用してこの機能を実現できます。この記事では、PHP の合計秒数を時、分、秒の形式に変換する方法を紹介します。
1. 合計秒数を取得する方法
PHP では、time() 関数を通じて現在の UNIX タイムスタンプを取得できます。 UNIX タイムスタンプは、1970 年 1 月 1 日の 0:00:00 から経過した秒数を指します。 strtotime() 関数を使用して、標準時刻文字列を UNIX タイムスタンプに変換することもできます。
たとえば、次のコードは現在の UNIX タイムスタンプを取得して出力します:
$timestamp = time(); echo $timestamp;
出力結果は次のとおりです:
1623761913
2. 合計秒数を時間に変換します。 、分、秒の形式
PHP では、数学演算と文字列演算を使用して、合計秒を時、分、秒の形式に変換できます。具体的な実装方法は次のとおりです。
function secondsToTime($seconds) { $hours = floor($seconds / 3600); $minutes = floor(($seconds - ($hours * 3600)) / 60); $seconds = $seconds - ($hours * 3600) - ($minutes * 60); return str_pad($hours, 2, '0', STR_PAD_LEFT).':'.str_pad($minutes, 2, '0', STR_PAD_LEFT).':'.str_pad($seconds, 2, '0', STR_PAD_LEFT); }
上記のコードでは、秒の合計を時、分、秒の形式に変換するために使用される、 SecondsToTime() という名前の関数を定義します。この関数のパラメータ $秒 は、入力された合計秒数を表します。
まず、合計秒数を 3600 で割って時間数を取得します。 PHP の Floor() 関数は、浮動小数点数を切り捨てて整数を返すことができます。たとえば、floor(5.5) の結果は 5 です。
次に、合計秒数から時間で表される秒数を引いて、残りの秒数を取得します。残りの秒を 60 で割ると分が得られます。同様に、floor()関数を使用して切り捨てます。
最後に、残りの秒数から分で表される秒数を引いて、最終的な秒数を取得します。
最後に、str_pad() 関数を使用して、時、分、秒を 2 桁に入力し、時、分、秒の形式で表現される文字列に連結します。
異なる合計秒は異なる時、分、秒に変換される可能性があるため、出力結果の形式を統一するために str_pad() 関数を使用して入力する必要があります。
3. 実際のシナリオにコードを適用する
次に、上記のコードを実際のシナリオに適用してみます。ユーザーに簡単に表示できるように、ビデオの合計再生時間 (秒単位) を時、分、秒の形式に変換したいとします。
以下は簡単な例です:
$videoLength = 8939; // 视频总播放时长为8939秒 $playTime = secondsToTime($videoLength); echo $playTime; // 输出结果为:02:28:59
上記のコードでは、ビデオの合計再生時間を 8939 秒に設定し、秒ToTime() 関数を呼び出してそれを時、分に変換します。 、および 2 番目の形式。最後に、変換された時、分、秒の形式を印刷してユーザーに表示します。
4. 概要
上記の紹介を通じて、PHP の合計秒数を時、分、秒の形式に変換する方法を学びました。このタイプの時間変換は非常に一般的であり、バックエンド アプリケーションで役立ちます。このアプローチを使用すると、合計秒数を読みやすい形式に簡単に変換し、ユーザーに表示できます。この知識を実際の業務に応用し、より実践的な機能をアプリケーションに追加していただければ幸いです。
以上がPHPで合計秒を時、分、秒に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。