Cześć!
Tworzę dla pewnych szkół aplikację webową pomocną w zażądaniu placówką. Mam już sporo funkcji, które zależą od tego, czy został wybrany aktualny plan lekcji - pamiętany w $_SESSION['pla_id']
Zrobiłem funkcję, która sprawdza obecność tej zmiennej sesyjnej:
function no_pla_sel($unit="", $info_type="html") {
if (!isset($_SESSION['pla_id']) or $_SESSION['pla_id']=="") {
if ($info_type == "html")
return array("no"=>1, "msg"=>'<div><b UWAGA:</b> <u>Brak aktywnego planu</u> => proszę go wybrać.</div>');
else
return array("no"=>1, "msg"=>'UWAGA: Brak aktywnego planu => proszę go wybrać.');
}
else return array("no"=>0, "msg"=>"");
}
W każdej funkcji potrzebowałbym teraz wywołać no_pla_sel()
i sprawdzić, czy zwrócona tablica ma klucz "no"
o wartości 1
(np. tak):
function jakas_funkcja($par1, $par2) {
$unit = "jakas_funkcja";
//...
/* sprawdzenie, czy wybrano plan i wyjście z komunikatem w przypadku braku planu */
$noPla = no_pla_sel($unit);
if ($noPla["no"] == 1) {
return $noPla["msg"];
}
//...
}
Czy jest jakiś trik pozwalający na to, by nie trzeba było w każdej funkcji pisać kodu jak ten powyżej, ale np. coś takiego?
function jakas_funkcja($par1, $par2) {
//...
no_pla_sel_trick("jakas_funkcja");
//...
}
Funkcja no_pla_sel_trick
musiałaby jakoś powodować (po spełnieniu logiki w niej określonej) wyjście także z funkcji, w której została wywołana.
Chciałbym po prostu ułatwić sobie pisanie i uprościć kod.
Da się tak?
PS. Nie miałem pomysłu na tytuł, więc taki został. Jakieś pomysły na inny?