Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Estou tentando fazer um script para dividir as matérias de estudo da semana. Eu preciso preencher o numero total de horas livre na semana com as aulas e o que sobrar na última semana.
Alguém poderia me ajudar?
<?php
$numero_horas_semana = 15;
$numero_semanas = 5;
$total_horas = $numero_horas_semana * $numero_semanas;
// Total de aulas por matérias
// Cada aula = 1 hora
$materias['matematica'] = 20;
$materias['portugues'] = 10;
$materias['fisica'] = 25;
$materias['quimica'] = 8;
$materias['sociologia'] = 5;
$materias_total = 0;
foreach ($materias as $key => $value) {
$materias_total += $value;
}
$semanas_necessarias = $materias_total / $numero_horas_semana;
$semanas_necessarias_arredondado = ceil($semanas_necessarias);
if($semanas_necessarias_arredondado < $numero_semanas) echo 'TEMPO INSUFICIENTE';
} for ($i = 1; $i <= $semanas_necessarias_arredondado; $i++) {
echo '<h1>Semana '.$i.'</h1>';
echo '<p>Nome da materia: X aulas</p>';
echo '<p> </p>';
}
}
echo '<p>Total Horas para estudo: '.$total_horas.'</p>';
echo '<p>Total de Matérias selecionadas: '.$materias_total.'</p>';
echo '<p>Semanas necessárias para estudo: '.$semanas_necessarias_arredondado.'</p>';Consegui. Não sei se era o jeito mais fácil.
$materias['matematica'] = [1,5,78,10,15,20];
$materias['portugues'] = [40,50,60,70,80];
$materias['fisica'] = [100,120,152,145,300,310,330];
$materias['quimica'] = [500,502,510];
$materias['sociologia'] = [999];
$resultado = array_map("count", $materias);
for($i = 0; $i < max($resultado); $i++)
{
foreach ($materias as $key => $value) {
if($materias[$key][$i] > 0)
$materias_total[] = $materias[$key][$i];
}
}
echo "<pre>";
print_r($materias_total);
exit();
Galera,
Pensei em juntar tudo em um array só, com os valores intercalados. E depois dividir as materias em semana com array_chunk.
Minha dúvida, tem alguma função que mescla os array, intercalando?
Exemplo:
//