私はまだコードを書く方法を学んでいるジュニアプログラマです。 私はこの配列から、私のPHP得られた配列とデータベースPHPのデータを比較する
//data inside the array are days name
$days = array();
for($date = $from_date; $date <= $to_date; $date->modify('+1 day')) {
array_push($days,strtolower($date->format('l')));
}
でこの配列を持って、ユーザー(月曜日、火曜日、など)によって選択された日のためにリストがあるでしょう
それから私は私のデータベースにこのテーブルを持っています
work_scheme
work_schemeが、これは私のめざしているテーブル
//field_name => data
Monday => Working Day
Tuesday => Working Day
Wednesday => Working Day
Thursday => Working Day
Friday => Working Day
Saturday => Half Day
Sunday => Off Day
で構成されていデータがデータベース
$working_days = array();
if(count($work_scheme) > 0){
foreach($work_scheme as $r){
$working_days[0] = array(
"monday" => $r['monday']
);
$working_days[1] = array(
"tuesday" => $r['tuesday']
);
$working_days[2] = array(
"wednesday" => $r['wednesday']
);
$working_days[3] = array(
"thursday" => $r['thursday']
);
$working_days[4] = array(
"friday" => $r['friday']
);
$working_days[5] = array(
"saturday" => $r['saturday']
);
$working_days[6] = array(
"sunday" => $r['sunday']
);
}
}
から取得されrking_days配列は、だから今どのように私は、私は、データベース内の私のテーブルにユーザの活動から得た配列を比較することができますか?
私は$ working_daysは[$ x]は私の曜日名を返しません、代わりにそれはどちらか一日の仕事を私に返すことに気づく私はこの次のコードを持っているが、それは正しく
for($i = 0; $i < count($days); $i++){
for($x = 0; $x < count($working_days); $x++){
$total_days = 0;
if($days[$i] == $working_days[$x]){
echo "hello world";
}
}
}
を動作しません。 、半日または休日 $ days()から$ working_days dayまでの曜日名を比較するにはどうすればよいですか?
金曜日、土曜日、日曜日を選択日とすると、1.5日間返されるコードを書くにはどうすればよいですか?
Working day = 1
Half day = 0.5
Off day = 0