PHPで合計秒を時、分、秒に変換する方法

PHPz
リリース: 2023-04-18 13:54:10
オリジナル
1657 人が閲覧しました

バックエンド アプリケーションを開発する場合、時間情報をより適切に表示するために、合計秒数を時、分、秒の形式に変換する必要があることがよくあります。 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート