ホームページ  >  に質問  >  本文

数値 (0 ~ 23) を AM/PM の時刻形式に変換する PHP コード

0 から 23 までの数値の配列があり、各数値は午前 0 時から午後 11 時までの時間を表します。キーの値で降順に並べ替えます。

リーリー ###等。たとえば、配列の最初の要素のキーが 22 の場合、変数 $first を「午後 10 時」にしたいとします。

もちろん、次のように書くこともできます:

リーリー

しかし、キーごとに 23 回実行する必要があります...もっと簡単な方法はありますか?

P粉009828788P粉009828788274日前435

全員に返信(4)返信します

  • P粉353282123

    P粉3532821232023-12-26 16:57:54

    間違ってコピーしてしまいました

    <?php
    // 原始数组
    $array = [
        22 => 8,
        3 => 7,
        5 => 6
    ];
    // 转换后的时间数组
    $times = [];
    foreach ($array as $key => $value) {
        // 将键值(小时)转换为12小时制的时间格式
        $hour = $key % 12;
        if ($hour == 0) {
            $hour = 12;
        }
        $times[$key] = $hour . ($key >= 12 ? 'PM' : 'AM');
    }
    // 输出转换后的时间数组
    foreach ($times as $timeKey => $time) {
        echo "键值" . $timeKey . "对应的输出为:" . $time . "\n";
    }
    ?>

    返事
    0
  • P粉600402085

    P粉6004020852023-12-25 17:02:45

    $array = array(
        22 => 8,
        3  => 7,
        5 => 6    
    );
    
    $i = 1;
    foreach ($array $key=>$val)
    {
        ${'time_' . $i} = date("HA", strtotime($key . ":00:00"));
        $i++;
    }
    
    //Now check echo $time_1;

    返事
    0
  • P粉353282123

    P粉3532821232023-12-26 16:53:20

    わかりました

    わかりました

    返事
    0
  • P粉276064178

    P粉2760641782023-12-25 11:32:18

    これがコードです

    リーリー

    返事
    0
  • キャンセル返事