【问题标题】:Function to check the time and run program according to that time.检查时间并根据该时间运行程序的功能。
【发布时间】:2016-10-14 19:44:54
【问题描述】:

我正在编写估算时间的函数。即根据时间运行特定事件...假设我有一个时间数组

$times = array(
    '00:00' => 'Programme 1',
    '00:30' => 'Programme 2',
    '01:00' => 'Programme 3',
    '01:30' => 'Programme 4',
    '02:00' => 'Programme 5',
    '02:30' => 'Programme 6',
    '03:00' => 'Programme 7',
    '03:30' => 'Programme 8',
    '04:00' => 'Programme 9',
    '04:30' => 'Programme 10',
    '05:00' => 'Programme 10',
);

和功能

echo (currently_should_play("00:05", $times) === 'Programme 1' ? 'Ok 1' : 'Not Ok 1') . PHP_EOL;

如果第一次小于第二次它应该运行第一次并且如果它等于精确值而不是它的运行甚至......

上面的函数调用应该与00:00匹配并打印'ok'

让我们假设另一个例子

echo (currently_should_play("00:58", $time) === 'Programme 2' ? 'Ok 2' : 'Not Ok 2') . PHP_EOL;

它应该与第二个值匹配,因为它与程序 2 匹配...

请提供一些解决方案..

我的函数代码在这里,我从数组中获取键和值

function currently_should_play($current_time, array $times) {
   foreach ($times as $time => $programme) {
    echo $time;
    echo $programme."<br/>";

   }
}

【问题讨论】:

    标签: php function time


    【解决方案1】:
    function currently_should_play($current_time, array $times) {
      $s=size($times);
      while($s-->0){
       if($times[$s]==$current_time){
        return $times[$s];
       }elseif($times[$s-1]==$current_time){
        return $times[$s-1];
       }elseif($times[$s-1]<$current_time&&$times[$s]>$current_time){
        return $times[$s-1];
       }
     }
     return false;
    }
    

    【讨论】:

    • 当我将其更改为 sizeof 它的显示偏移错误时,它说大小未定义....您尝试过吗?
    猜你喜欢
    • 2012-08-10
    • 2013-01-15
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    相关资源
    最近更新 更多