Good evening, it seems that I got around to my problem!
It is the solution (at least temporary)
//criar o array (primeiros dois dias folga 1 e 2)
$arrayTurno = array('1','2');
//verifico qual o fim do array
$end = array_slice($arrayTurno, -1, 1);
//verifico qual o ultimo turno antes das folgas (manhã 1, manhã 2, tarde 1 ou tarde 2)
$lastTurno = array_slice($arrayTurno, -3, 1);
//Verifico qual o ultimo turmo de manhã (3 manhã 1 e 5 manhã 2)
$lastM = array_slice($arrayTurno, -6, 1);
// se o turno apenas tem apenas 2 dias (folgas) acrescenta 4 dias de manhã 1
if (count($arrayTurno) < 3 and $end = '2') {
array_push($arrayTurno, '3','3','3','3');
}
// se já existe 1 turno ou + verifica se é manhã 1 (se assim for acrescenta folgas + tarde 1)
if (count($arrayTurno) > 3 and $lastTurno = '3') {
array_push($arrayTurno, '1','2','4','4','4','4');
}
// se já existe 1 turno ou + verifica se é tarde 1 (se assim for acrescenta folgas + manhã 2)
if (count($arrayTurno) > 3 and $lastM = '4') {
array_push($arrayTurno, '1','2','5','5','5','5');
}
// se já existe 1 turno ou + verifica se é manhã 2 (se assim for acrescenta folgas + tarde 2)
if (count($arrayTurno) > 3 and $lastM = '5') {
array_push($arrayTurno, '1','2','6','6','6','6');
}
// acabo de encher o array até ficar com o comprimento do total de datas
$max = mysqli_num_rows($resultData);
$newArrayTurno = array();
while(count($newArrayTurno) <= $max){
$newArrayTurno = array_merge($newArrayTurno, $arrayTurno);
}
$arrayTurno = array_slice($newArrayTurno, 0, $max);
At the end, just insert it into the table.
Thank you, regards, Rui