ZSEiO w Krośnie
|
TECHNIK INFORMATYK
|
|||
|
|
||||
Lekcja nr:
|
7
|
Nazwa
przedmiotu:
|
||
Temat:
Deklaracja funkcji
|
Czas trwanie 45 min |
|||
|
Autor materiałów:
dr Marcin Skuba |
||||
1.
Treści programowe:
Język PHP, deklaracja
funkcji, funkcje bezargumentowe nie zwracające wartości, argumenty funkcji,
zwracanie wartości przez funkcje, wywołanie każdy rodzaj funkcji
2.
Cel zajęć:
Celem zajęć jest
nabycie umiejętności deklarowania funkcji: bezargumentowej nie zwracającej
wartości, funkcję z argumentami oraz funkcje zwracającą wartość oraz
wywoływania każdej z funkcji.
3. Materiały
dydaktyczne
1. Funkcje bezargumentowe
Funkcje bezargumentowe to najprostszy typ funkcji.
Nie przyjmują żadnych danych wejściowych, a ich zadaniem jest wykonanie
określonego bloku kodu. Używa się ich do powtarzalnych, prostych działań, które
nie zależą od zewnętrznych wartości.

2. Funkcje pobierające argumenty
Te funkcje są bardziej elastyczne. Przyjmują jedną
lub więcej zmiennych (argumentów), które są używane wewnątrz bloku kodu.
Argumenty pozwalają na dynamiczne działanie funkcji w zależności od
przekazanych wartości.

3. Funkcje zwracające wartości
Funkcje te, zamiast bezpośrednio wyświetlać wynik,
zwracają go za pomocą instrukcji return. Zwrócona wartość może być następnie
przypisana do zmiennej lub użyta w dalszych obliczeniach. Jest to kluczowe dla
pisania czystego i modularnego kodu.

4. Funkcje z tablicami jako argumentami
Funkcje mogą przyjmować tablice jako argumenty, co
jest bardzo przydatne do przetwarzania kolekcji danych. Można w ten sposób
łatwo zliczać elementy, iterować po nich lub je modyfikować. W tym przykładzie
funkcja obliczy sumę wszystkich liczb w przekazanej tablicy.

5. Deklaracja funkcji
z domyślnymi wartościami
Aby zadeklarować funkcję w PHP ze zmiennymi
domyślnymi, po prostu przypisz wartość argumentowi bezpośrednio w nagłówku
funkcji. Dzięki temu, jeśli nie przekażesz wartości dla danego argumentu
podczas wywołania funkcji, zostanie użyta jego domyślna wartość.

6. Zmienne globalne i
wykorzystanie ich wewnątrz funkcji
W PHP, aby użyć zmiennej globalnej wewnątrz funkcji,
która ma swój własny, lokalny zasięg, musisz ją jawnie zadeklarować za pomocą
słowa kluczowego global. Bez tej deklaracji,
funkcja nie "widzi" zmiennych zdefiniowanych poza nią.

7. Wykorzystanie
zmiennych statycznych w funkcjach
W PHP zmienne statyczne (static)
w funkcji pozwalają na zachowanie ich wartości pomiędzy kolejnymi wywołaniami tej funkcji. W przeciwieństwie do zmiennych
lokalnych, które są resetowane przy każdym wejściu do funkcji, zmienne
statyczne inicjalizowane są tylko raz, przy pierwszym wywołaniu.

filter_var($email,
FILTER_VALIDATE_EMAIL) to
funkcja PHP, która sprawdza, czy dany ciąg znaków jest poprawnym adresem
e-mail.
Działa to w ten sposób:
Jeśli adres jest poprawny, funkcja zwraca go, co w
warunkach logicznych jest traktowane jako true. Jeśli
adres jest niepoprawny, zwraca false. Jest to
kluczowy mechanizm do bezpiecznego przetwarzania danych wejściowych od
użytkownika.
4. Zadania
Zadanie 1.
Powitanie (bezargumentowa)
Napisz funkcję przywitaj(), która po prostu
wyświetli komunikat "Witaj na stronie!". Wywołaj tę funkcję, aby
sprawdzić jej działanie.
Zadanie 2.
Sprawdzanie parzystości (z argumentem, bez zwracania wartości)
Stwórz funkcję sprawdz_parzystosc($liczba).
Funkcja ma przyjmować jedną liczbę i wyświetlać, czy jest ona parzysta,
czy nieparzysta. Użyj operatora modulo (%) do sprawdzenia, czy reszta z
dzielenia przez 2 wynosi 0.
Zadanie 3.
Obliczanie wieku (z argumentem, zwracająca wartość)
Napisz funkcję oblicz_wiek($rok_urodzenia). Funkcja ma przyjmować rok urodzenia i
zwracać wiek osoby.Wskazówka: do obliczenia
bieżącego roku użyj funkcji date("Y").
Zadanie 4.
Kalkulator BMI (kilka argumentów, zwracająca wartość)
Stwórz funkcję kalkulator_bmi($waga,
$wzrost). Funkcja powinna obliczać i zwracać wartość BMI (wzrost w metrach).
Pamiętaj, aby obsłużyć przypadek, gdy wzrost wynosi 0.Wzór na BMI:
waga/(wzrost2).
Zadanie 5.
Walidacja adresu e-mail (z argumentem, zwracająca wartość logiczną)
Napisz funkcję sprawdz_email($email).
Funkcja powinna przyjmować adres e-mail i zwracać true,
jeśli jest poprawny, lub false, jeśli nie.Użyj wbudowanej funkcji filter_var()
z filtrem FILTER_VALIDATE_EMAIL.
Zadanie 6.
Generator hasła (z argumentem i domyślną wartością)
Utwórz funkcję generuj_haslo($dlugosc = 8). Funkcja ma losować i zwracać ciąg znaków o
podanej długości. Domyślnie długość powinna wynosić 8.Wskazówka: możesz użyć
tablicy znaków i pętli do budowania hasła.
Zadanie 7.
Obliczanie średniej (z tablicą jako argumentem)
Napisz funkcję oblicz_srednia($oceny).
Funkcja powinna przyjmować tablicę liczb (np. ocen) i zwracać ich średnią arytmetyczną.Użyj wbudowanych funkcji array_sum() i count().
Zadanie 8.
Odwracanie tablicy (z tablicą jako argumentem, zwracająca wartość)
Stwórz funkcję odwroc_tablice($tablica).
Funkcja ma przyjmować tablicę i zwracać nową tablicę, której elementy są w
odwróconej kolejności. Nie używaj wbudowanych funkcji PHP do odwracania. Użyj
pętli i dodawaj elementy do nowej tablicy w odwrotnej kolejności.
Zadanie 9:
Kalkulator z wartościami domyślnymi
Napisz funkcję PHP o nazwie oblicz(), która będzie
działała jak prosty kalkulator. Funkcja ma wykonywać operacje matematyczne
(dodawanie, odejmowanie, mnożenie) na dwóch liczbach.
Zadanie 10: Kalkulator VAT
Napisz funkcję PHP, która obliczy cenę produktu po
dodaniu podatku VAT. Stawka VAT nie jest przekazywana do funkcji jako argument,
lecz jest pobierana z globalnej zmiennej.
Zadanie 11: Licznik odwiedzin z identyfikatorem sesji
Napisz funkcję PHP odwiedz_strone($id_sesji), która będzie zliczać wizyty dla unikalnych sesji
użytkowników.