Řešení

  1. Upravte funkci z příkladu 5 - Vytváření pole tak, aby do výsledného pole ukládala pouze všechna různá čísla měsíců.

<?php
$datumy = array("2.10.2008", "1.5.2006", "23.9.1988", "6.2.2004", "7.5.2007");
 
function jakyJeDen($datum) {
	$pole_datum = explode(".",$datum);
	$den = $pole_datum[0];
	$mesic = $pole_datum[1];
	$rok = $pole_datum[2];
	$timestamp = mktime(0, 0, 0, $mesic, $den, $rok);
	$den_v_tydnu = date("N",$timestamp);
	$ceske_dny = array(
		1=>"pondělí",
		"úterý",
		"středa",
		"čtvrtek",
		"pátek",
		"sobota",
		"neděle"
	);
 
	$jmeno_dne = $ceske_dny[$den_v_tydnu];
	return $jmeno_dne;
}
 
 
function mesiceVDatech ($datumy) {
	$pole_mesicu = array();
	foreach ($datumy as $aktualni_datum) {
		$pole_datum = explode(".",$aktualni_datum); 
		$mesic = $pole_datum[1];
		if (!in_array($mesic, $pole_mesicu)) {
			$pole_mesicu[] = $mesic;
		}
	}
 
	asort($pole_mesicu);
	return $pole_mesicu;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>Cvičení 2</title>
    </head>
    <body>
        <div>Dnešní datum je: <?php echo date("d.m.Y"); ?></div>
 
		<?php
			$pocitadlo = 1;
			foreach ($datumy as $aktualni_datum) {
				echo "<div>";
				echo $pocitadlo++;
				echo ". ".$aktualni_datum." je ".jakyJeDen($aktualni_datum);
				echo "</div>\n";
			}
		?>
	<hr/>
	<div>Měsíce v datumech: <?php echo implode(", ",mesiceVDatech($datumy)); ?></div>
 
    </body>
</html>

courses/b6b39zwa/tutorials/solutions/04/datum-6.txt · Last modified: 2018/10/01 15:02 (external edit)