- var_dump: documentation ( source)
- date: documentation ( source)
- strtotime: documentation ( source)
- strtolower: documentation ( source)
<?php
$data_inicio = new DateTime('2014-10-01');
$data_final = new DateTime('2014-10-20');
$diferenca_data = $data_final->diff($data_inicio)->format('%d');
$possui_dias_semana = [
'monday', 'sunday'
];
$dias_semana = [
'monday' => 'Mon',
'tuesday' => 'Tue',
'wednesday' => 'Wed',
'thursday' => 'Thu',
'friday' => 'Fri',
'saturday' => 'Sat',
'sunday' => 'Sun'
];
$datas_da_semana = [];
for($i = 1; $i <= $diferenca_data; $i++) {
$data_modificada = $data_inicio->modify('+1 day');
$data = $data_modificada->format('Y-m-d');
$dia_semana = date('D', strtotime($data));
foreach($possui_dias_semana as $dia) {
if( strtolower($dias_semana[$dia]) == strtolower($dia_semana)) {
$datas_da_semana[] = [ 'date' => $data, 'day' => $dias_semana[$dia] ];
}
}
}
var_dump($datas_da_semana);