2017-09-16 17 views
0

データベースから日付を印刷するには、whileステートメントで動的な$_SESSION変数を作成します。 TuesdayFridayの日付のみを印刷する必要があります。これを達成するために、平日はdate()strtotime()で取得します。PHPループ中の動的セッション変数

$d = 0;//create dynamic numbers 
while($mydate = mysqli_fetch_array($myweekdatesQ)){$d++; 

//get weekday of date 
$weekday =date('l', strtotime($mydate['event_date'])); 

if($weekday ==='Tuesday'){ 
$t = 't_'.$d; 
echo $_SESSION[$t] = $mydate['event_date']; 
} 

if($weekday ==='Friday'){ 
$f = 'f_'.$d; 
echo $_SESSION[$f] = $mydate['event_date']; 
} 
} 

これはかなりうまくいくものの、問題があります。

$_SESSION[t1]; 
$_SESSION[f2]; 
$_SESSION[t3]; 
$_SESSION[f4]; 
$_SESSION[t5]; 
$_SESSION[f6]; 
$_SESSION[t7]; 
$_SESSION[f8]; 

に従うようにwhile文のプリントがしかし、変数$dが1未満と以上の4になることはありません最終的な結果は、どのように私はこの作業を行うことができます

$_SESSION[t1]; 
$_SESSION[t2]; 
$_SESSION[t3]; 
$_SESSION[t4]; 

$_SESSION[f1]; 
$_SESSION[f2]; 
$_SESSION[f3]; 
$_SESSION[f4]; 

すべきですか?

答えて

1

この

$d = 0;//create dynamic numbers for $t 
$x = 0; //create dynamic numbers for $f 
while($mydate = mysqli_fetch_array($myweekdatesQ)){ 

    //get weekday of date 
    $weekday =date('l', strtotime($mydate['event_date'])); 

    if($weekday ==='Tuesday'){$d++; 
     $t = 't_'.$d; 
     echo $_SESSION[$t] = $mydate['event_date']; 
    } 

    if($weekday ==='Friday'){$x++; 
     $f = 'f_'.$x; 
     echo $_SESSION[$f] = $mydate['event_date']; 
     } 
} 
のような2つのダイナミック数字を作ってみます