ZSEiO w Krośnie

TECHNIK INFORMATYK

 

Lekcja  nr:

2

Nazwa przedmiotu:
Aplikacje internetowe  

Temat: Instrukcje warunkowe w PHP 

Czas trwanie

45 min

 

Autor materiałów: dr Marcin Skuba

 

1. Treści programowe: 

Język PHP, instrukcje warunkowe, operatory porównania if, ifelse, ifelseifelse, switch

 

2. Cel zajęć:

Celem zajęć jest opanowanie umiejętność posługiwania się instrukcjami warunkowymi w języku PHP wraz w operatorami porównania.

 

3. Materiały dydaktyczne

·       Instrukcja if

Instrukcja if jest najprostsza. Wykonuje kod, jeśli warunek w nawiasach jest prawdziwy.

·       Instrukcja if...else

Ta instrukcja pozwala na wykonanie jednego bloku kodu, gdy warunek jest prawdziwy, oraz innego bloku, gdy jest fałszywy.

·       Instrukcja if...elseif...else

Używamy jej, gdy mamy więcej niż dwa możliwe warunki. PHP sprawdza je po kolei, a gdy znajdzie pierwszy prawdziwy, wykonuje odpowiedni kod i przerywa dalsze sprawdzanie.

·       Operatory porównania:

Operator

Name

Example

Result

==

Equal

$x == $y

zwraca true jeśli $x jest równe $y (np.: 5 i ‘’5’’ są równe mimo różnych typów wartości są równe i zwracana jest wartość true)

===

Identical

$x === $y

zwraca true jeśli $x jest równe $y, oraz równe są typy (np.: 5 i ‘’5’’ są równe ale różnią się typer i zwracana jest wartość false)

!=

Not equal

$x != $y

zwraca true jeśli $x jest różne od $y

<> 

Not equal

$x <> $y

zwraca true jeśli $x jest różne od $y

!==

Not identical

$x !== $y

zwraca true jeśli $x nie jest równe $y, lub są różne tytpy

Greater than

$x > $y

zwraca true jeśli $x jest większe od $y

Less than

$x < $y

zwraca true jeśli $x jest mniejsze od $y

>=

Greater than or equal to

$x >= $y

zwraca true jeśli $x jest większe lub róne $y

<=

Less than or equal to

$x <= $y

zwraca true jeśli $x jest mniejsze lub równe $y

<=>

Spaceship

$x <=> $y

Zwraca liczbę całkowitą mniejszą, równą lub większą od zera, w zależności od tego, czy $x jest mniejsze, równe lub większe niż $y. Wprowadzone w PHP 7.

 

·       Instrukcja switch

Instrukcja switch służy do wyboru jednego bloku kodu spośród wielu, na podstawie wartości pojedynczej zmiennej lub wyrażenia. Jest to bardziej zwięzła i często bardziej czytelna alternatywa dla długiego łańcucha instrukcji if...elseif...else, zwłaszcza gdy porównujemy jedną zmienną z wieloma stałymi wartościami.

Zasada działania

  1. PHP ocenia wyrażenie w switch(...).
  2. Porównuje wynik z wartościami podanymi w każdej klauzuli case.
  3. Gdy znajdzie dopasowanie, wykonuje kod w bloku case.
  4. Słowo kluczowe break; jest kluczowe! Powoduje ono opuszczenie instrukcji switch po wykonaniu pasującego kodu. Jeśli go zabraknie, PHP będzie kontynuował wykonywanie kodu w kolejnych blokach case, aż do napotkania break lub końca instrukcji switch.
  5. default (opcjonalnie): Ten blok kodu jest wykonywany, gdy żadna z klauzul case nie pasuje do wartości wyrażenia.

·       Operatory logiczne

Operatory logiczne służą do łączenia wielu warunków w instrukcjach if, else if i while. Pozwalają na podejmowanie decyzji na podstawie wyników kilku wyrażeń.

Operator

Rodzaj działania

||

OR (lub)

&&

AND (i)

xor lub ^

XOR

!

zaprzeczenie

 

0 &&0 = 0     0 ||0 = 0      0 xor 0 = 0   !0 = 1
0
&&1 = 0     0 ||1 = 1      0 xor 1 = 1   !1 = 0
1
&&0 = 0     1 ||0 = 1      1 xor 0 = 1
1
&&1 = 1     1 ||1 = 1      1 xor 1 = 0

Obraz zawierający tekst, zrzut ekranu, Czcionka

Zawartość wygenerowana przez AI może być niepoprawna.

 

·       Warunkowe wykonywanie czystego kodu HTML

Możesz warunkowo wykonać kod HTML w PHP, umieszczając go wewnątrz bloku if. Jeśli warunek jest prawdziwy, blok PHP jest otwierany, wykonywany jest kod HTML, a następnie blok PHP jest zamykany.

Obraz zawierający tekst, zrzut ekranu

Zawartość wygenerowana przez AI może być niepoprawna.

4. Zadania


Zadanie 1: Sprawdzanie wieku

Napisz program, który sprawdza wiek użytkownika.

  1. Zadeklaruj zmienną $wiek i przypisz jej dowolną liczbę.
  2. Użyj instrukcji if...else, aby sprawdzić, czy użytkownik jest pełnoletni.
  3. Wyświetl na ekranie odpowiedni komunikat: "Jesteś pełnoletni." lub "Jesteś niepełnoletni.".

Zadanie 2: Sprawdzanie hasła

Napisz program, który sprawdza poprawność logowania, porównując hasło i typ danych.

  1. Zadeklaruj dwie zmienne: $haslo_uzytkownika i $haslo_zapisane.
  2. Przypisz do $haslo_zapisane wartość "TajneHaslo123".
  3. Do $haslo_uzytkownika przypisz to samo hasło, ale w formie liczbowej (np. 123, jeśli jest to możliwe) lub jako ciąg znaków, który ma inną wartość niż $haslo_zapisane.
  4. Użyj odpowiedniego operatora oraz instrukcji warunkowej, aby sprawdzić, czy hasła są identyczne (równa wartość i typ).
  5. Wyświetl komunikat: "Hasło jest poprawne." lub "Hasło jest niepoprawne.".

Zadanie 3: System ocen szkolnych

Napisz program, który na podstawie oceny liczbowej wyświetli jej słowny odpowiednik.

  1. Zadeklaruj zmienną $ocena i przypisz jej liczbę od 1 do 6.
  2. Użyj instrukcji if...elseif...else, aby wyświetlić komunikat:

Zadanie 4: Porównywanie dwóch liczb

Napisz program, który porównuje dwie liczby.

  1. Zadeklaruj dwie zmienne: $liczba1 i $liczba2.
  2. Użyj instrukcji if...elseif...else oraz operatorów >, < i ==, aby sprawdzić, która z liczb jest większa lub czy są równe.
  3. Wyświetl odpowiedni komunikat, np.: "Liczba 1 jest większa od liczby 2.", "Liczba 2 jest większa od liczby 1." lub "Liczby są równe.".

Zadanie 5: Sprawdzanie numeru miesiąca

Napisz program, który na podstawie numeru miesiąca (gdzie 1 to styczeń) wyświetli jego nazwę.

  1. Zadeklaruj zmienną $miesiac i przypisz jej liczbę od 1 do 12.
  2. Użyj instrukcji switch, aby wyświetlić nazwę miesiąca.
  3. Dodaj blok default, który wyświetli komunikat "Niepoprawny numer miesiąca.", jeśli wprowadzona liczba nie mieści się w zakresie 1-12.

Zadanie 6: Sprawdzanie temperatury wody

Napisz program, który sprawdza stan skupienia wody w zależności od temperatury.

  1. Zadeklaruj zmienną $temperatura.
  2. Użyj instrukcji if...elseif...else oraz operatorów <, > i <=> (lub ===), aby sprawdzić stan:
  3. Wyświetl odpowiedni komunikat na stronie.

Zadanie 7: Porównywanie trzech liczb

Napisz program, który znajdzie największą z trzech podanych liczb.

  1. Zadeklaruj trzy zmienne: $liczba1, $liczba2 i $liczba3. Przypisz im dowolne wartości.
  2. Użyj instrukcji warunkowych oraz operatorów logicznych, aby sprawdzić, która z liczb jest największa.
  3. Wyświetl na ekranie odpowiedni komunikat, np.: "Największa liczba to: [wartość największej liczby]."


Zadanie 8: Kontrola dostępu do platformy edukacyjnej

Twoim zadaniem jest napisanie skryptu PHP, który sprawdzi, czy dany użytkownik ma uprawnienia do zalogowania się na platformie edukacyjnej. Dostęp jest przyznawany, jeśli użytkownik spełnia odpowiednie kryteria, które musisz zaimplementować za pomocą instrukcji warunkowych i operatorów logicznych.

Warunki dostępu:

Krok 1: Zmienne

Zadeklaruj i przypisz wartości do następujących zmiennych, które będą symulować dane użytkownika:


Zadanie 9: Ocena wyników ucznia

Napisz program, który oceni status ucznia na podstawie jego wyników. Użyj zmiennych do symulacji ocen i statusu zaliczeń, a następnie zastosuj instrukcje warunkowe z operatorami logicznymi, aby określić, czy uczeń zaliczył semestr, czy został wyróżniony.

Warunki:

Implementacja:

  1. Zadeklaruj i przypisz wartości do zmiennych: $srednia_ocen, $zaliczona_matematyka, $zaliczona_programowanie.
  2. Użyj zagnieżdżonych instrukcji if do sprawdzenia warunków zaliczenia i wyróżnienia.
  3. Wyświetl odpowiedni komunikat dla każdego z możliwych scenariuszy (wyróżnienie, tylko zaliczenie, brak zaliczenia).

Zmieniaj wartości zmiennych, aby przetestować wszystkie kombinacje.