Ich bin Schritt weiter, keine Ahnung ob dieses so korrekt ist
$Da = "";
$Ende = "18:00";
$termine = [ [ 't_von' => "10:00", 't_bis' => "11:00" ],
[ 't_von' => "12:15", 't_bis' => "13:00" ],
[ 't_von' => "15:00", 't_bis' => "16:30" ]
];
echo "<pre>";
print_r ( $termine );
echo "</pre>";
echo "<br><br>";
for ($i=0; $i<count($termine); $i++)
{
if ($i+1 <count($termine)) {
$Da .= $termine[$i]['t_bis'] . " bis " . $termine[$i+1]['t_von'] . "<br>";
} else {
$Da .= $termine[$i]['t_bis'] . " bis " . $Ende;
}
echo "Von: " . $termine[$i]['t_von'] . "<br>";
echo "Bis: " . $termine[$i]['t_bis']. "<br><br>";
}
echo "<br>";
echo "<strong>Zeiten</strong>:<br>" . $Da;
echo "<br><br>";
Die Ausgabe schaut so aus
Array
(
[0] => Array
(
[t_von] => 10:00
[t_bis] => 11:00
)
[1] => Array
(
[t_von] => 12:15
[t_bis] => 13:00
)
[2] => Array
(
[t_von] => 15:00
[t_bis] => 16:30
)
)
Von: 10:00
Bis: 11:00
Von: 12:15
Bis: 13:00
Von: 15:00
Bis: 16:30
Zeiten:
11:00 bis 12:15
13:00 bis 15:00
16:30 bis 18:00
Vom Gefühl müsst es stimmen. Nur was mache ich jetzt mit dem Start? Und was ist wenn Termine sich jetzt überlappen? Das heißt ich müsste jetzt innerhalb der for noch eine IF einbauen und prüfen ob ein Termin sich überlappt? Wenn sich ein Termin überlappt dann interessiert mich das erste Ende nicht.