0

時間範囲の配列があり、時間範囲には特定のビデオがあります。現在の時間と一致するビデオを表示します

以下のような変数を作成し、配列に割り当てました。配列から現​​在の時刻のビデオをフィルター処理するのを手伝ってください。

ex- サーバー時間が 2012-06-08 14:45:10 の場合、これはビデオ 2 を表示する必要があります

$d1 = "2012-06-08 14:26:39";
$video1='http://video-js.zencoder.com/oceans-clip.mp4';
$d2 = "2012-06-08 14:39:39";
$video2='http://video-js.zencoder.com/oceans-clip.mp4';
$d3 = "2012-06-08 14:56:10";

$cc=array(
1=>array($d,$d2,$video1),
2=>array($d2,$d3,$video2)
);

//get current time
$ctime=date('Y-m-d H:i:s',time());
//need to check matched array element for current time within above array date ranges
//Ex - if the server time is  2012-06-08 14:45:10 this need show video 2
4

2 に答える 2

1

これを試すことができます

$showvideo = "";
for ($i = 1; $i <= sizeof($cc); $i++) {
    $video = $cc[$i];
    if ($ctime >= $video[0] && $ctime <= $video[1]) {
        $showvideo = $video[2];
        break;
    }
}

if ($showvideo == "") {
    // Error
}

基本的に、PHP では日付を比較できるので、配列を調べてそれぞれを比較し、日付が 2 つの間にあるかどうかを確認します。

于 2012-06-08T19:14:47.573 に答える
1

各ビデオに時間の範囲を割り当てる必要があり、時間入力に基づいて正しいビデオを探すことができます

例えば

$ctime=date('Y-m-d H:i:s',time());

$video1=array("http://video-js.zencoder.com/oceans-clip.mp4","2012-06-08 14:26:39","2012-06-08 14:39:39")

if ($ctime >= $video1[2]) && ($ctime <= $video1[3]) { echo $video1[1]; }

これで問題が解決すると思います

于 2012-06-08T19:18:34.940 に答える