Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 24 kwietnia 2026 12:15
  • Data zakończenia: 24 kwietnia 2026 12:29

Egzamin zdany!

Wynik: 28/40 punktów (70,0%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

W PHP, aby połączyć się z bazą danych MySQL przy użyciu biblioteki mysqli, w zapisie zamieszczonym poniżej, w miejscu litery 'c' powinno się wpisać

Ilustracja do pytania
A. hasło użytkownika
B. lokalizację serwera bazy danych
C. nazwę użytkownika
D. nazwę bazy danych
W języku PHP używając biblioteki mysqli do połączenia z bazą danych MySQL, jako drugi argument funkcji mysqli należy podać nazwę użytkownika. Konstruktor mysqli przyjmuje pięć głównych argumentów: lokalizację serwera, nazwę użytkownika, hasło użytkownika, nazwę bazy danych oraz opcjonalne port i socket. Nazwa użytkownika jest kluczowa, ponieważ określa, który użytkownik bazy danych będzie używany do połączenia. Najczęściej używanym użytkownikiem przy lokalnych połączeniach testowych jest 'root', ale w środowiskach produkcyjnych stosuje się bardziej restrykcyjne podejście, tworząc dedykowane konta z ograniczonymi uprawnieniami dostępowymi. Korzystając z odpowiednich danych uwierzytelniających, można także lepiej logować działania i zarządzać prawami dostępu. Dobra praktyka wymaga, aby hasło było przechowywane bezpiecznie, np. w plikach konfiguracyjnych poza dostępem zewnętrznym, a dane użytkownika zawsze były szyfrowane przy przesyłaniu. Znajomość poprawnej konfiguracji połączenia z bazą danych jest kluczowa dla bezpieczeństwa i wydajności aplikacji.

Pytanie 2

W języku PHP, po wykonaniu poniższego fragmentu kodu, w zmiennej o nazwie Nowy_Napis uzyskamy

Ilustracja do pytania
A. ZaWszE
B. ZAWSZE SPRAWDZ SWOJ KOD
C. zAwSZe sPrAwDz SWOJ kOd
D. zawsze sprawdz swoj kod
Funkcja strtolower w PHP służy do konwersji ciągu znaków na małe litery. W podanym przykładzie zmienna Napis zawiera wartość ZaWsze SpRaWdZ swoj KoD, która jest mieszanką wielkich i małych liter. Po zastosowaniu funkcji strtolower do tej zmiennej, wynikowy ciąg zostaje przetworzony tak, że wszystkie litery są zamieniane na małe. Dlatego w zmiennej Nowy_Napis znajdzie się tekst zawsze sprawdz swoj kod. Użycie strtolower jest częste, gdy chcemy ujednolicić dane tekstowe, np. porównując adresy email czy nazwy użytkowników, aby uniknąć rozróżnienia wielkości liter. Jest to zgodne z dobrą praktyką programistyczną, która polega na zapewnieniu spójności danych poprzez ich normalizację. W kontekście aplikacji webowych często stosuje się tę funkcję do przetwarzania danych wejściowych od użytkowników, aby uzyskać jednolite formatowanie i uniknąć potencjalnych błędów przy wyszukiwaniu lub porównywaniu danych. Praktyczne zastosowanie tej funkcji ułatwia zarządzanie danymi i upraszcza logikę biznesową aplikacji.

Pytanie 3

Jakiego języka można użyć do obsługi połączenia z bazą danych MySQL podczas rozwijania aplikacji webowej?

A. PHP
B. HTML
C. CSS
D. XHTML
PHP jest językiem skryptowym, który jest szeroko stosowany do tworzenia dynamicznych aplikacji internetowych, a jego zdolność do interakcji z bazami danych, takimi jak MySQL, czyni go idealnym narzędziem do obsługi połączeń z bazą danych. PHP umożliwia programistom wysyłanie zapytań SQL do bazy danych, wykonywanie operacji CRUD (tworzenie, odczyt, aktualizacja, usuwanie) oraz przetwarzanie wyników, co jest kluczowe w nowoczesnym tworzeniu aplikacji webowych. Przykładowy kod PHP do nawiązania połączenia z bazą danych MySQL może wyglądać następująco: $conn = new mysqli('localhost', 'username', 'password', 'database');. W przypadku niepowodzenia połączenia, można użyć if ($conn->connect_error) { die('Connection failed: ' . $conn->connect_error); }. PHP wspiera również różne techniki zabezpieczeń, takie jak przygotowywanie zapytań, co znacząco zwiększa bezpieczeństwo aplikacji przed atakami typu SQL Injection. Dokumentacja PHP oraz standardy, takie jak PSR (PHP Standards Recommendations), dostarczają programistom niezbędnych wytycznych, aby tworzyć wydajne i bezpieczne aplikacje. Dzięki swojej elastyczności i wszechstronności, PHP stał się językiem pierwszego wyboru dla programistów zajmujących się tworzeniem aplikacji internetowych z interfejsem do baz danych.

Pytanie 4

W języku PHP zapisano fragment kodu działającego na bazie MySQL. Jego zadaniem jest wypisanie
$z=mysqli_query($db,"SELECT ulica, miasto, kod_pocztowy FROM adresy");
$a=mysqli_fetch_row($z);
echo "$a[1], $a[2]";

A. miasta i kodu pocztowego z pierwszego zwróconego wpisu
B. ulicy oraz miasta ze wszystkich zwróconych wpisów
C. miasta i kodu pocztowego ze wszystkich zwróconych wpisów
D. ulicy oraz miasta z pierwszego zwróconego wpisu
Fragment kodu PHP przedstawiony w pytaniu wykonuje zapytanie do bazy danych MySQL, a jego celem jest uzyskanie danych z tabeli 'adresy', w tym pola 'ulica', 'miasto' i 'kod_pocztowy'. Funkcja mysqli_query wykonuje zapytanie, a następnie mysqli_fetch_row pobiera pojedynczy wiersz wyników jako tablicę. Wartości z tablicy są dostępne za pomocą indeksów, gdzie $a[0] to 'ulica', $a[1] to 'miasto', a $a[2] to 'kod_pocztowy'. Kod wypisuje na ekranie wartości $a[1] i $a[2], co odpowiada miastu i kodowi pocztowemu z pierwszego zwróconego rekordu. W praktyce, aby uzyskać pełną funkcjonalność, należy również zadbać o obsługę błędów oraz o zabezpieczenia przed SQL Injection, stosując np. prepared statements. Kod ten jest zgodny ze standardami PHP i MySQL, które zalecają używanie obiektowej lub proceduralnej wersji funkcji mysqli, co przyczynia się do większej przejrzystości oraz bezpieczeństwa aplikacji.

Pytanie 5

$n = '[email protected]'; $dl = strlen($n); $i = 0; while ($i < $dl && $n[$i] != '@') {     echo $n[$i];     $i++; } Fragment kodu w języku PHP wyświetli

A. tylko nazwę domeny, czyli 'host.pl'
B. cały adres e-mail, czyli '[email protected]'
C. nazwę konta z znakiem @, czyli 'adres@'
D. wyłącznie nazwę konta, czyli 'adres'
Analizując niepoprawne odpowiedzi, warto zwrócić uwagę na kilka kluczowych aspektów. W przypadku odpowiedzi, która wskazuje na wypisanie nazwy konta ze znakiem '@', należy zauważyć, że kod w rzeczywistości nie wlicza znaku '@' do wypisywanej wartości. Działanie pętli opiera się na warunku przerywającym, który kończy iterację przed napotkaniem '@', co oznacza, że nie może on znaleźć się w rezultacie. Z kolei wskazanie, że kod wypisze cały adres e-mail jest błędne, ponieważ pętla jest zaprojektowana tak, aby zakończyć działanie przed osiągnięciem znaku '@', więc taki wynik nie jest możliwy. Ostatnia niepoprawna odpowiedź, sugerująca, że kod wypisze samą nazwę domeny, jest również myląca. W kodzie nie ma logiki, która pozwalałaby na wyodrębnienie części po znaku '@'; zamiast tego pętla przerywa działanie, gdy osiągnie ten znak. Jest to kluczowe, aby zrozumieć, że kod nie ma mechanizmu do analizy lub rozdzielania adresu e-mail po znaku '@'. Wszystkie te odpowiedzi pokazują niezrozumienie, jak działają operacje na ciągach w PHP oraz logikę pętli, która w kontekście tego fragmentu kodu jest fundamentalna dla uzyskania prawidłowego wyniku.

Pytanie 6

Warunek zapisany w języku PHP wyświetli liczbę, gdy

if ($liczba % 2 == 0)
{
    echo $liczba;
}
A. wynik dzielenia danej liczby przez 2 jest równy 0
B. jest to liczba pierwsza
C. jest to liczba dodatnia
D. jest to liczba parzysta
Odpowiedź jest prawidłowa ponieważ wyrażenie $liczba % 2 == 0 w języku PHP wykorzystuje operator reszty z dzielenia który sprawdza czy liczba po podzieleniu przez 2 ma resztę równą zero. Taki warunek jest spełniony wyłącznie dla liczb parzystych które z definicji dzielą się bez reszty przez 2. W programowaniu rozpoznawanie liczb parzystych jest często stosowane w algorytmach które wymagają specyficznego przetwarzania danych takich jak sortowanie czy filtrowanie. Warto również zauważyć że używanie operatora modulo (%) w takich przypadkach jest uznawane za dobrą praktykę branżową ze względu na jego czytelność i efektywność. Przykładem praktycznego zastosowania może być np. generowanie naprzemiennego koloru tła w tabelach aby zwiększyć ich czytelność co jest powszechnie stosowane w aplikacjach webowych. Zrozumienie tego konceptu jest fundamentalne w programowaniu ponieważ pozwala na tworzenie bardziej dynamicznych i elastycznych aplikacji które potrafią reagować na różne stany danych.

Pytanie 7

W języku PHP zamieszczono fragment kodu. Plik cookie utworzony przez to polecenie

setcookie("osoba", "Anna Kowalska", time()+(3600*24));
A. zostanie usunięty po jednym dniu od jego utworzenia
B. będzie przechowywany na serwerze przez jedną godzinę
C. zostanie usunięty po jednej godzinie od jego utworzenia
D. będzie przechowywany na serwerze przez jeden dzień
Niepoprawne odpowiedzi na to pytanie opierają się na nieprawidłowym rozumieniu działania funkcji setcookie w PHP, a także na błędnej interpretacji czasu przechowywania plików cookie. Odpowiedzi sugerujące, że plik cookie będzie przechowywany przez jeden dzień lub jedną godzinę, są oparte na mylnych założeniach dotyczących obliczeń czasowych. Czas przechowywania ciasteczka jest określany przez wartość przekazywaną do funkcji setcookie, a w tym przypadku maksymalny czas wynosi 24 godzin. Błędne stwierdzenia mogą wynikać z mylnego założenia, że funkcja time() i dodatkowe sekundy nie są prawidłowo sumowane. Ważne jest, aby zrozumieć, że ciasteczka nie są przechowywane na serwerze, lecz w przeglądarkach użytkowników, co oznacza, że dostępność ich danych zależy od ustawień przeglądarki oraz polityki prywatności. Typowym błędem jest również mylenie pojęć związanych z czasem przechowywania – ciasteczka nie są usuwane w momencie wygaśnięcia, ale po upływie ustalonego czasu, co wyklucza możliwość poprawnych odpowiedzi, które sugerowałyby krótszy okres ich przechowywania. Kluczowym aspektem w pracy z ciasteczkami jest znajomość ich parametrów i ich wpływu na interakcję użytkownika z aplikacją, co może mieć duże znaczenie w kontekście zarządzania sesjami oraz personalizacją doświadczeń użytkownika.

Pytanie 8

W PHP do zapisywania informacji w pliku służy funkcja

A. freadfile()
B. fgets()
C. fputs()
D. fopen()
Funkcja fputs() w języku PHP jest używana do zapisywania danych do otwartego pliku. Działa na zasadzie wysyłania strumienia danych do pliku, co czyni ją odpowiednią do operacji zapisu. Przykładowe zastosowanie fputs() może wyglądać tak: najpierw należy otworzyć plik za pomocą funkcji fopen(), a następnie wykorzystać fputs() do zapisania danych. Na przykład: $file = fopen('dane.txt', 'w'); fputs($file, 'To jest przykładowy tekst.'); fclose($file); Warto pamiętać, że przy korzystaniu z funkcji fputs() istotne jest, aby plik był wcześniej otwarty w odpowiednim trybie (np. 'w' dla zapisu). W praktyce, fputs() jest zalecane do zapisu danych, ponieważ jest bardziej elastyczne od niektórych innych funkcji i pozwala na zapisywanie danych w formacie tekstowym. Dobre praktyki obejmują również sprawdzenie, czy otwarcie pliku zakończyło się sukcesem, co można zrobić poprzez odpowiednie warunki sprawdzające. Zrozumienie tej funkcji zwiększa efektywność programowania w PHP oraz umiejętność zarządzania danymi.

Pytanie 9

W skrypcie PHP należy stworzyć cookie o nazwie "owoce", które przyjmie wartość "jabłko". Cookie powinno być dostępne przez jedną godzinę od momentu jego utworzenia. W tym celu w skrypcie PHP trzeba zastosować funkcję:

A. cookie("jabłko", "owoce", 3600);
B. setcookie("jabłko", "owoce", time()+3600);
C. setcookie("owoce", "jabłko", time()+3600);
D. cookie("owoce", "jabłko", 3600);
Funkcja setcookie() jest standardowym narzędziem w PHP, używanym do tworzenia cookies. W przypadku tej odpowiedzi, używamy jej w poprawny sposób, definiując nazwę cookies jako 'owoce', wartość jako 'jabłko' oraz czas wygaśnięcia. Wywołanie time()+3600 oznacza, że cookie będzie ważne przez jedną godzinę od momentu jego utworzenia. Ważne jest, aby pamiętać, że setcookie() musi być wywołane przed jakimkolwiek kodem HTML, który jest wysyłany do przeglądarki. W praktyce, cookies mogą być używane do przechowywania informacji o użytkownikach, takich jak preferencje lub dane sesji. Na przykład, w przypadku aplikacji e-commerce, cookies mogą pomóc w śledzeniu produktów dodanych do koszyka przez użytkownika, co jest istotne dla poprawy doświadczeń zakupowych. Standardy dotyczące cookies wskazują również na konieczność zachowania ostrożności w zakresie prywatności i bezpieczeństwa, dlatego warto stosować flagi zabezpieczeń, takich jak HttpOnly i Secure, w zależności od kontekstu użycia.

Pytanie 10

Przedstawiony kod PHP nawiązuje połączenie z serwerem bazy danych. Jakiego typu operacje powinny się znaleźć w instrukcji warunkowej w miejscu trzech kropek?
$db = mysqli_connect("localhost", "root", "qwerty", "baza1");
if (!$db) {
...
}

A. Obsługa błędu połączenia
B. Zamknięcie połączenia z bazą danych
C. Informacja o udanym połączeniu z bazą
D. Obsługa danych uzyskanych z bazy
Zamknięcie bazy danych w kontekście nieudanego połączenia jest koncepcją, która nie ma sensu. Jeśli połączenie się nie uda, to nie ma nawet nawiązanej sesji, która mogłaby być zamknięta. Połączenie z bazą danych powinno być zamykane tylko w momencie, gdy zostało nawiązane i jest już niepotrzebne, a nie w przypadku, gdy wystąpił błąd w trakcie łączenia. Komunikat o pomyślnym połączeniu także nie ma zastosowania w tej sytuacji, ponieważ, skoro połączenie się nie udało, nie ma podstaw do informowania użytkownika o jego powodzeniu. Obsługa danych pobranych z bazy również nie ma miejsca, jeśli połączenie nie zostało ustanowione, co czyni te odpowiedzi błędnymi. Właściwe podejście w takich sytuacjach to zawsze najpierw sprawdzenie, czy połączenie zostało nawiązane, a następnie działania w przypadku usunięcia błędu. Ignorowanie tej zasady może prowadzić do nieprzewidzianych zachowań aplikacji, a nawet do wycieków danych lub awarii serwerów.

Pytanie 11

Definicja formularza została użyta na stronie internetowej, która przesyła dane do pliku napisanego w języku PHP. W jakiej tablicy będą dostępne dane z tego formularza?

Ilustracja do pytania
A. $_POST
B. $_COOKIE
C. $_GET
D. $_ACTION
Tablica $_POST w PHP służy do przechwytywania danych przesyłanych za pomocą metody POST. Jest to standardowa praktyka w przypadku formularzy, które zawierają dane wrażliwe lub dużą ilość informacji. Metoda POST przesyła dane w treści żądania HTTP, co oznacza, że nie są one widoczne w adresie URL, co zwiększa bezpieczeństwo w porównaniu do metody GET. Przykładem zastosowania mogą być formularze logowania czy przesyłania plików. W PHP dostęp do danych z formularza można uzyskać poprzez prostą składnię, na przykład $_POST['nazwa_pola']. Ważne jest, aby zawsze walidować i filtrować dane wejściowe, aby zabezpieczyć aplikację przed atakami typu SQL Injection czy XSS. Zastosowanie metody POST jest zgodne z ogólnymi zasadami bezpieczeństwa i standardami projektowania aplikacji webowych, które zalecają ograniczanie widoczności danych przesyłanych przez użytkownika. Dobre praktyki obejmują również stosowanie HTTPS, aby dodatkowo zaszyfrować dane przesyłane pomiędzy klientem a serwerem.

Pytanie 12

Który z poniższych sposobów na dodawanie komentarzy do kodu nie jest używany w języku PHP?

A. # komentarz
B. // komentarz
C. /* komentarz */
D. <!-- komentarz -->
Odpowiedź <!-- komentarz --> jest poprawna, ponieważ jest to typowy sposób komentowania w HTML, a nie w PHP. W PHP stosujemy inne konwencje do komentowania kodu. Najczęściej używane metody to: # oraz // dla komentarzy jedno-liniowych oraz /* komentarz */ dla komentarzy wielo-liniowych. Przykładowo, użycie // w kodzie PHP pozwala na dodanie komentarza do linii kodu, co może być pomocne w wyjaśnieniu działania danej sekcji. Komentarze są istotnym elementem kodu, ponieważ pomagają programistom w zrozumieniu logiki programu, zwłaszcza przy pracy w zespole lub przy dłuższych projektach. Zgodnie z dobrymi praktykami programistycznymi, komentarze powinny być jasne i zwięzłe, co ułatwia innym programistom lub przyszłym wersjom siebie zrozumienie kodu. Warto również pamiętać, że odpowiednie komentowanie kodu zwiększa jego czytelność oraz ułatwia późniejsze wprowadzanie zmian.

Pytanie 13

Pętla while powinna działać tak długo, jak zmienna x ma wartości z przedziału obustronnie otwartego -2, 5). Zapis tego warunku w nagłówku pętli za pomocą języka PHP wygląda następująco

A. ($x > -2) && ($x < 5)
B. ($x == -2) && ($x < 5)
C. ($x > -2) || ($x > 5)
D. ($x < -2) || ($x > 5)
Prawidłowa odpowiedź, czyli ($x > -2) && ($x < 5), odzwierciedla logiczny warunek, który jest zgodny z opisanym przedziałem otwartym (-2, 5). Pętla while w języku PHP powinna wykonywać blok kodu, dopóki wartość zmiennej x jest większa od -2 oraz jednocześnie mniejsza od 5. Tego rodzaju warunek jest kluczowy w programowaniu, gdyż pozwala na przeprowadzanie iteracji, które są ograniczone do konkretnego zakresu wartości. Przykładowo, jeśli chcielibyśmy zrealizować program, który przetwarza dane tylko w tym przedziale, taki warunek umożliwiłby nam uniknięcie obliczeń dla wartości spoza tego zakresu, co może być istotne w kontekście optymalizacji wydajności. Praktycznym zastosowaniem byłoby zrealizowanie algorytmu, który zbiera dane pomiarowe w zadanym zakresie, co jest częstym przypadkiem w analizie danych. Dobrą praktyką jest także stosowanie odpowiednich komentarzy w kodzie, które wyjaśniają logikę warunków, co sprzyja późniejszej konserwacji; w tym przypadku komentarz mógłby brzmieć "Iteruj, gdy x jest w przedziale (-2, 5)".

Pytanie 14

Ile razy zostanie wykonana poniższa pętla w PHP?

for($i = 0; $i < 25; $i += 5) { ... }
A. 26
B. 0
C. 5
D. 25
W programowaniu pętle są kluczowymi konstrukcjami kontrolnymi pozwalającymi na wielokrotne wykonywanie kodu. W analizowanym przykładzie mamy do czynienia z pętlą for, która jest jedną z najczęściej używanych, z uwagi na jej elastyczność i czytelność. Pętla ta jest zdefiniowana jako for($i = 0; $i < 25; $i += 5). W tym kontekście błędem jest zakładanie, że pętla wykona 0 iteracji, ponieważ zmienna $i zaczyna od wartości 0 i spełnia warunek $i < 25, co rozpoczyna proces iteracji. Kolejną błędną koncepcją jest myślenie, że pętla wykona 25 lub 26 iteracji. Taki błąd może wynikać z niezrozumienia mechanizmu przyrostu zmiennej iteracyjnej $i. W tym przypadku, przyrost wynosi 5, co oznacza, że wartości przyjmowane przez $i to 0, 5, 10, 15 i 20, zanim warunek pętli przestanie być spełniony. Takie myślenie może prowadzić do nadmiernej ilości iteracji w pętlach, co jest typowym błędem projektowym. Warto zwrócić uwagę na poprawne formułowanie warunków pętli oraz zrozumienie wpływu inkrementacji na liczbę iteracji. Starannie zaplanowane i przemyślane pętle są kluczowe dla efektywności działania programu, a ich niepoprawne zrozumienie prowadzi do błędów, które są trudne do wykrycia i naprawy w większych projektach.

Pytanie 15

Zaprezentowano poniżej obsługę

if (!isset($_COOKIE[$nazwa]))
  echo "nie ustawiono!";
else
  echo "ustawiono: " . $_COOKIE[$nazwa];
A. zmiennych tekstowych
B. bazy danych
C. ciasteczek
D. sesji
Obsługa ciasteczek jest kluczowym elementem w zarządzaniu stanem w aplikacjach webowych. Ciasteczka, czyli małe pliki tekstowe przechowywane w przeglądarce użytkownika, pozwalają na śledzenie aktywności użytkownika między stronami i sesjami. W kodzie powyżej widzimy użycie globalnej tablicy PHP $_COOKIE do sprawdzania, czy ciasteczko o określonej nazwie zostało ustawione. Funkcja isset() sprawdza, czy zmienna jest zdefiniowana i nie jest null. Jeśli ciasteczko istnieje, jego wartość jest wyświetlana. Ciasteczka są powszechnie używane do zarządzania sesjami, personalizacji treści czy śledzenia zachowań użytkowników. W praktyce, zabezpieczenia są ważnym aspektem zarządzania ciasteczkami. Powinny być szyfrowane i oznaczone jako HttpOnly oraz Secure, aby zminimalizować ryzyko kradzieży informacji przez ataki XSS. Programiści powinni także stosować polityki prywatności zgodnie z regulacjami RODO, informując użytkowników o użyciu ciasteczek. Zrozumienie tych mechanizmów jest fundamentalne dla budowy bezpiecznych i funkcjonalnych aplikacji webowych.

Pytanie 16

W języku PHP zmienna typu float może przyjmować wartości

A. wartości nieliczbowe
B. jedynie liczby całkowite
C. wartości logiczne
D. wartości zmiennoprzecinkowe
W języku PHP zmienne typu float są używane do reprezentowania liczb zmiennoprzecinkowych, co oznacza, że mogą przechowywać zarówno wartości całkowite, jak i wartości z częścią ułamkową. Typ float w PHP jest szczególnie przydatny w sytuacjach, gdzie precyzyjne obliczenia są niezbędne, na przykład w aplikacjach finansowych, gdzie obliczenia z użyciem pieniędzy wymagają uwzględnienia centów. W praktyce, operacje na zmiennych typu float mogą obejmować dodawanie, odejmowanie, mnożenie oraz dzielenie. Warto również zauważyć, że PHP obsługuje zarówno liczby w formacie dziesiętnym, jak i w notacji naukowej. Dobrą praktyką jest używanie funkcji takich jak round() do zaokrąglania wyników obliczeń zmiennoprzecinkowych, aby uniknąć problemów z precyzją, które mogą występować w wyniku ograniczeń reprezentacji liczb zmiennoprzecinkowych w pamięci komputera. W dokumentacji PHP, typ float jest jasno zdefiniowany jako liczba zmiennoprzecinkowa, co podkreśla jego kluczową rolę w różnych zastosowaniach programistycznych. Zrozumienie tego typu zmiennych jest fundamentem dla efektywnego programowania w PHP.

Pytanie 17

Zidentyfikuj poprawnie zbudowany warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if {mysql_connect_errno()}{}
B. if (mysqli_connect_errno()){}
C. if (mysql_connect_error())()
D. if {mysqli_connect_error()}{}
No, odpowiedzi, które wybrałeś, mają sporo błędów. Na przykład, 'if (mysql_connect_error())()' jest źle napisane, bo masz tu podwójne nawiasy, a powinny być pojedyncze. 'if {mysql_connect_errno(){}}' i 'if {mysqli_connect_error()}' używają klamr, gdzie powinny być nawiasy okrągłe, bo w PHP warunki muszą być w nawiasach. Te stare funkcje, takie jak 'mysql_connect_error()' czy 'mysql_connect_errno()', to już przeżytek, zostały usunięte w PHP 7.0. Teraz, wybierając 'mysqli', zapewniasz sobie lepsze bezpieczeństwo i działanie aplikacji. To jest kluczowe, żeby zrozumieć, jak poprawnie pisać kod, bo bez tego ciężko osiągniesz sukces w programowaniu w PHP.

Pytanie 18

W PHP zmienna $_SERVER zawiera między innymi dane o

A. nazwie ciasteczek zapisanych na serwerze oraz powiązanych z nimi danych
B. adresie IP serwera oraz nazwie protokołu
C. informacjach z formularza przetwarzanego na serwerze
D. informacjach związanych z sesjami
W kontekście zmiennej $_SERVER w PHP, nieprawidłowe odpowiedzi skupiają się na danych, które nie są przechowywane w tej superglobalnej zmiennej. Na przykład, informacje o danych formularza przetwarzanego na serwerze są dostępne w tablicy $_POST lub $_GET, a nie w $_SERVER. Zrozumienie różnicy między tymi tablicami jest kluczowe, ponieważ każda z nich ma swoją specyfikę i zastosowanie. $_POST zawiera dane przesyłane metodą POST, co jest najczęściej wykorzystywane w formularzach, natomiast $_GET zachowuje dane z parametrów URL. Kolejnym nieporozumieniem jest zrozumienie, że dane dotyczące sesji są zarządzane przez zmienną $_SESSION, która jest odrębna od $_SERVER i służy do przechowywania informacji o sesji użytkownika na serwerze. Zmienne ciastka, takie jak $_COOKIE, są również niezależne i nie mają związku z $_SERVER. Warto zauważyć, że niepoprawne odpowiedzi mogą wynikać z mylnego założenia, że $_SERVER gromadzi wszystkie dane związane z interakcją użytkownika z aplikacją webową. W rzeczywistości, każda z tych tablic ma swoje konkretne zastosowanie i zakres, co jest kluczowe dla prawidłowego przetwarzania żądań w PHP oraz efektywnego zarządzania danymi w aplikacjach internetowych.

Pytanie 19

Interpreter PHP zgłosi błąd i nie zrealizuje kodu, jeśli programista:

A. będzie pisać kod bez zastosowania wcięć
B. będzie definiował zmienne w obrębie warunku
C. nie umieści średnika po wyrażeniu w instrukcji if, gdy po nim występuje sekcja else
D. pobierze dane z formularza, w którym pole input pozostało puste
W przypadku instrukcji warunkowej if w PHP, każdy blok kodu, który jest wykonywany w przypadku prawdziwego warunku, powinien być poprawnie zakończony średnikiem, z wyjątkiem konstrukcji, które są wstawiane bezpośrednio w ramy instrukcji, jak else. Jeżeli programista nie postawi średnika po wyrażeniu if, a następnie użyje sekcji else, to interpreter PHP zgłosi błąd składniowy. Jest to istotne, ponieważ każda linia kodu w PHP, która wykonuje jakąkolwiek operację, musi być zakończona średnikiem, co jest standardową praktyką w językach programowania. Przykład poprawnej konstrukcji: if ($warunek) { // kod } else { // kod }. W przypadku braku średnika może to prowadzić do nieprzewidzianych błędów w kodzie, co z kolei wpłynie na stabilność aplikacji. Przestrzeganie takich zasad jest kluczowe dla osiągnięcia dobrej jakości kodu oraz jego łatwości w utrzymaniu.

Pytanie 20

Jakie będzie wynikowe wyjście po uruchomieniu tego skryptu PHP?

<?php
$kolory = array("czarny", "zielony", "niebieski", "biały");
rsort($kolory);
$ile = count($kolory);
for($x = 0; $x < $ile; $x++)
{
  echo $kolory[$x].", ";
}
?>
A. zielony, niebieski, czarny, biały
B. biały, niebieski, zielony, czarny
C. czarny, zielony, niebieski, biały
D. biały, czarny, niebieski, zielony
Skrypt PHP wykorzystuje funkcję rsort() do sortowania tablicy w porządku malejącym alfabetycznie. W tym przypadku tablica zawiera kolory: czarny zielony niebieski biały. Funkcja rsort() zmienia kolejność elementów według malejącej wartości ASCII pierwszej litery każdego ciągu znakowego. Gdy tablica jest sortowana w ten sposób pierwsza spółgłoska kończy się na największym zestawie znaków ASCII. Dlatego wynik to zielony niebieski czarny biały. Po sortowaniu pętla for iteruje przez wszystkie elementy tablicy używając funkcji count() do określenia długości tablicy i wypisuje każdy kolor oddzielony przecinkiem. Użycie rsort() jest zgodne z dobrymi praktykami programistycznymi w przypadku gdy chcemy uzyskać szereg wsteczny np. do wyświetlania list w interfejsach użytkownika od końca do początku. Zapewnienie że dane wejściowe są poprawnie uporządkowane pozwala na efektywne zarządzanie danymi a zrozumienie tego procesu jest kluczowe w budowaniu dynamicznych aplikacji PHP.

Pytanie 21

Jaki jest cel funkcji napisanej w PHP?

function fun1($liczba)
{
  if($liczba % 2 == 0)
    return 1;

  return 0;
}
A. Zwrócenie wartości 0, gdy liczba jest parzysta
B. Wypisanie liczby nieparzystej
C. Wypisanie liczby parzystej
D. Zwrócenie wartości 1, gdy liczba jest parzysta
Funkcja w języku PHP została zaprogramowana w taki sposób, aby najpierw sprawdzić, czy podana liczba jest parzysta, używając operatora modulo (%). Operacja $liczba % 2 == 0 sprawdza resztę z dzielenia przez 2, która dla liczb parzystych wynosi 0. Jeśli warunek jest spełniony, funkcja natychmiast zwraca wartość 1, co oznacza, że liczba jest parzysta. Taki sposób kodowania jest wydajny, ponieważ funkcja zakończy działanie natychmiast po spełnieniu warunku, bez dalszego przetwarzania. Jest to dobry przykład stosowania operacji warunkowych w funkcjach, co jest zgodne z dobrymi praktykami programistycznymi, zwłaszcza gdy zależność logiczna jest prosta i może być szybko zidentyfikowana. Takie funkcje często wykorzystywane są w systemach walidacji danych, gdzie szybkie potwierdzenie poprawności danych jest kluczowe dla wydajności całego systemu. Pozwala również na łatwe rozszerzenie logiki, jeśli w przyszłości zajdzie taka potrzeba.

Pytanie 22

Aby przekształcić tekst "ala ma psa" na "ALA MA PSA", należy zastosować funkcję PHP

A. ucfirst("ala ma psa")
B. strtoupper("ala ma psa")
C. strtolower("ala ma psa")
D. strstr("ala ma psa")
Fajnie, że użyłeś funkcji strtoupper w PHP! Dzięki niej przekształcasz cały tekst na wielkie litery, co w tym przypadku zmienia 'ala ma psa' na 'ALA MA PSA'. To naprawdę przydatna funkcja, zwłaszcza w aplikacjach webowych, gdzie ważne jest, żeby tekst wyglądał tak, jak powinien, np. zgodnie z zasadami SEO czy przy prezentacji danych. Przykładowo, w formularzach warto, żeby nazwy użytkowników zawsze były w tym samym formacie. Poza tym jest cała masa innych funkcji w PHP, które mogą przydać się do manipulacji tekstem, a ich znajomość poprawia jakość kodu i jego czytelność.

Pytanie 23

Jaki wynik daje poniższy kod PHP?

$dane = array ('imie' => 'Anna', 'nazwisko' => 'Nowak', 'wiek' => 21);
A. jest niepoprawny, nieznany operator =>
B. definiuje tablicę z trzema wartościami
C. jest błędny, ponieważ indeksami tablicy mogą być wyłącznie liczby całkowite
D. określa tablicę zawierającą sześć wartości
Ten kod w PHP pokazuje, jak zdefiniować tablicę asocjacyjną z trzema elementami. To fajna sprawa, bo tablice asocjacyjne pozwalają na użycie kluczy, które nie muszą być tylko liczbami, a mogą być także opisowe, jak w tym przypadku. Klucze to 'imie', 'nazwisko' oraz 'wiek', a ich wartości to odpowiednio 'Anna', 'Nowak' i 21. Operator '=>' służy do przypisywania wartości do klucza - to dość typowa konstrukcja, bo ułatwia organizację danych. Podoba mi się, że tablice asocjacyjne w PHP są przydatne w różnych sytuacjach, na przykład do przechowywania danych użytkowników czy różnych ustawień. W sumie, ważne, żeby dbać o typy danych przypisywanych do kluczy, bo dzięki temu później łatwiej będzie się z nimi pracować. PHP ma dużo funkcji do pracy z tablicami, jak sortowanie czy iteracja, więc na pewno warto to znać.

Pytanie 24

W języku PHP symbol "//" oznacza

A. początek skryptu
B. operator alernatywy
C. operator dzielenia całkowitego
D. początek komentarza jednoliniowego
W PHP znak "//" oznacza początek komentarza jednoliniowego. Komentarze są niezwykle ważnym elementem kodu, ponieważ pozwalają programistom na dodawanie objaśnień i notatek, które nie są wykonywane przez interpreter. Dzięki temu kod staje się bardziej czytelny i łatwiejszy w utrzymaniu, zwłaszcza w projektach zespołowych czy przy dłuższych skryptach. Na przykład, można użyć komentarza, aby wyjaśnić, jak działa dana funkcjonalność lub dlaczego podjęto określoną decyzję projektową. Ponadto, stosowanie komentarzy zgodnie z dobrymi praktykami zwiększa jakość dokumentacji projektu oraz ułatwia przyszłym programistom (lub samemu autorowi) zrozumienie logiki kodu. Warto również zauważyć, że w PHP istnieją inne sposoby komentowania, takie jak "#" dla komentarzy jednoliniowych oraz "/* ... */" dla komentarzy wieloliniowych. Użycie komentarzy w kodzie źródłowym jest istotnym aspektem programowania, promującym najlepsze praktyki związane z czytelnością i zarządzaniem projektami.

Pytanie 25

Na temat zmiennej predefiniowanej $_POST w języku PHP możemy stwierdzić, że

A. jest repliką tablicy $_COOKIE
B. zawiera informacje bezpośrednio przesłane do skryptu z ciasteczka
C. zawiera dane przesłane do skryptu z formularza
D. jest rozwiniętą wersją tablicy $_SESSION
Zmienna predefiniowana $_POST w języku PHP jest kluczowym elementem, który umożliwia przesyłanie danych z formularzy HTML do skryptu PHP. Gdy użytkownik wypełnia formularz i wysyła go, wszystkie dane z tego formularza są dostępne w tablicy asocjacyjnej $_POST, co pozwala na łatwe przetwarzanie danych w backendzie. Przykładowo, jeśli formularz zawiera pola takie jak 'imię' i 'email', po wysłaniu skrypt PHP może uzyskać te wartości poprzez $_POST['imię'] oraz $_POST['email']. To podejście jest zgodne z najlepszymi praktykami w programowaniu webowym, gdzie oddziela się logikę prezentacji od logiki przetwarzania danych. Ponadto, korzystając z $_POST, programiści mogą bezpiecznie odbierać dane bez obaw o ich modyfikację przez użytkownika, ponieważ nie są one widoczne w adresie URL, jak w przypadku metody GET. Warto również zauważyć, że korzystając z $_POST, można przesyłać różnorodne dane, w tym tekst, pliki i inne formaty, co czyni tę metodę niezwykle wszechstronną.

Pytanie 26

Funkcja zaprezentowana w PHP

function dzialania(int $x, float $y) {
  $z = $x + $y;
  return $z;
}
A. jest zadeklarowana z dwoma parametrami rzeczywistymi.
B. zwraca wynik.
C. przyjmuje dwa argumenty z wartością domyślną.
D. nie zwraca wyniku.
Odpowiedzi, które sugerują, iż funkcja nie zwraca wartości, są błędne, ponieważ wyraźnie widać, że zawiera instrukcję return, co świadczy o jej zdolności do zwracania wyniku. Takie nieporozumienia mogą wynikać z braku zrozumienia struktury funkcji w PHP, gdzie return jest kluczowym elementem określającym, że funkcja coś zwraca. Inna błędna odpowiedź sugeruje, że funkcja pobiera parametry z domyślną wartością. Chociaż PHP pozwala na definiowanie takich parametrów, w tym przypadku nie ma przypisanych wartości domyślnych, co oznacza, że użytkownik musi dostarczyć odpowiednie argumenty przy wywołaniu funkcji. Ponadto odpowiedź o dwóch rzeczywistych parametrach również wprowadza w błąd, gdyż typy są dokładnie określone jako int i float, co oznacza, że jeden z parametrów jest całkowity, a drugi zmiennoprzecinkowy. Takie niezrozumienie może być wynikiem braku uwagi na szczegóły podczas analizy kodu. Poprawne zrozumienie sygnatury i działania funkcji jest kluczowe dla skutecznego programowania, a błędne interpretacje mogą prowadzić do defektów w kodzie, które są trudne do zidentyfikowania i naprawy bez odpowiedniej wiedzy i doświadczenia w analizie typu danych oraz struktury funkcji w PHP. W praktyce, uniknięcie takich pomyłek wymaga dokładnej lektury kodu oraz praktyki w implementacji funkcji o różnorodnych sygnaturach w różnych kontekstach programistycznych. Dlatego tak istotne jest zrozumienie, jak funkcje operują na parametrach i jakie są ich możliwe zastosowania w projektach programistycznych.

Pytanie 27

Instrukcja języka PHP tworząca obiekt pkt dla zdefiniowanej w ramce klasy Punkt ma postać

class Punkt {  public $x;
                public $y;  }
A. pkt Punkt;
B. pkt = new Punkt();
C. Punkt() pkt;
D. pkt Punkt();
Twoja odpowiedź nie jest prawidłowa. Wybrałeś konstrukcję, która nie jest poprawnym sposobem tworzenia obiektu w języku PHP. PHP jest językiem obiektowym, a do tworzenia obiektów używamy konstrukcji z słowem kluczowym 'new' i nazwą klasy. Instrukcje, które wybrałeś, nie są poprawnymi instrukcjami w PHP i prawdopodobnie spowodują błąd składni. W odpowiedziach 2, 3 i 4 brakuje słowa kluczowego 'new', które jest niezbędne do tworzenia nowych instancji klas, a także brakuje znaku równości i prawidłowego ułożenia elementów. Rozumienie, jak tworzyć obiekty, jest kluczowe do efektywnego programowania w PHP, więc warto poświęcić temu więcej czasu. Spróbuj jeszcze raz, z pewnością sobie poradzisz!

Pytanie 28

Interpreter PHP zwróci błąd i zaniecha wykonania kodu, jeżeli programista

A. będzie definiował zmienne w obrębie warunku
B. będzie tworzył kod bez odpowiednich wcięć
C. nie umieści średnika po wyrażeniu w instrukcji if, jeśli za nim znajduje się sekcja else
D. pobierze wartość z formularza, w którym pole input nie zostało wypełnione
Niepostawienie średnika po wyrażeniu w instrukcji if, gdy następuje sekcja else, prowadzi do błędu składniowego w PHP. W języku PHP średnik jest używany do zakończenia instrukcji, co oznacza, że każda linia kodu, która stanowi osobną instrukcję, powinna być zakończona średnikiem. W przypadku używania instrukcji warunkowej if z sekcją else, zastosowanie średnika po pierwszej instrukcji (if) jest kluczowe. Przykładowo, poprawny kod wyglądałby tak: "if ($warunek) { //kod } else { //kod }". Jeśli pominiemy średnik po instrukcji if, interpreter PHP nie będzie w stanie prawidłowo zinterpretować kodu, co skutkuje błędem. Jest to zgodne z dobrymi praktykami programowania, które zalecają dbałość o szczegóły w składni, aby uniknąć błędów podczas wykonywania skryptów. Praktyka ta jest istotna, szczególnie w większych projektach, gdzie błędy składniowe mogą prowadzić do trudnych do zdiagnozowania problemów.

Pytanie 29

W języku PHP wykonano poniższą operację. Aby uzyskać wszystkie rezultaty tego zapytania, należy:

$tab = mysqli_query($db, "SELECT imie FROM Osoby WHERE wiek < 18");
A. użyć polecenia mysql_fetch
B. zaindeksować zmienną tab, tab[0] to pierwsze imię
C. wyświetlić zmienną $db
D. zastosować pętlę z poleceniem mysqli_fetch_row
Pojawiające się koncepcje w odpowiedziach błędnych wskazują na niezrozumienie procesu pobierania danych z bazy danych w PHP. Zaindeksowanie zmiennej tab, w myśli o tym, że tab[0] zwróci pierwsze imię, jest podejściem, które nie uwzględnia, że zmienna $tab nie jest tablicą, lecz wynikiem zapytania, które może zawierać wiele wierszy. Otrzymujemy obiekt typu mysqli_result, który musi być przetworzony przez odpowiednie funkcje, a nie za pomocą prostego indeksowania. Zastosowanie polecenia mysql_fetch jest również niepoprawne, ponieważ mysql_fetch jest przestarzałą funkcją z rodziny mysql, która nie jest już wspierana i powinna być zastąpiona przez mysqli_fetch_ lub PDO. Wyświetlanie zmiennej $db nie ma sensu w kontekście uzyskania wyników zapytania, ponieważ zmienna ta odnosi się do połączenia z bazą danych, a nie do danych z zapytania. Te błędne podejścia prowadzą do szerszego problemu, którym jest brak znajomości mechanizmów obsługi baz danych w PHP oraz różnicy między różnymi typami metod dostępu do danych. Kluczowe jest, aby nie tylko znać składnię, ale także rozumieć koncepty stojące za pobieraniem i przetwarzaniem danych w systemach baz danych. Właściwe podejście do zarządzania danymi wymaga umiejętności korzystania z odpowiednich funkcji oraz znajomości struktur danych, które są wykorzystywane w PHP.

Pytanie 30

Poniżej przedstawiono fragment kodu obsługującego

<?php
if ( !isset($_COOKIE[$nazwa]) )
  echo "nie ustawiono!";
else
  echo "ustawiono, wartość: " . $_COOKIE[$nazwa];
?>
A. sesji
B. ciasteczek
C. zmiennych tekstowych
D. baz danych
Odpowiedź "ciasteczek" jest poprawna, ponieważ kod PHP przedstawiony w pytaniu zajmuje się obsługą ciasteczek HTTP. Ciasteczka są to małe pliki przechowywane na urządzeniu użytkownika, które pozwalają na zachowanie stanu sesji oraz przechowywanie danych o użytkowniku. W tym przypadku, kod sprawdza, czy ciasteczko o danej nazwie (przechowywane w zmiennej $nazwa) zostało ustawione. Jeśli nie, wyświetla komunikat "nie ustawiono!", a jeśli tak, wyświetla jego wartość. Przykład zastosowania ciasteczek obejmuje przechowywanie preferencji użytkowników na stronach internetowych, takich jak wybór języka czy ostatnio przeglądane produkty w sklepie internetowym. Ważne jest, aby pamiętać o dobrych praktykach dotyczących bezpieczeństwa ciasteczek, takich jak ustalanie odpowiednich flag (np. HttpOnly, Secure), aby chronić je przed atakami typu XSS oraz CSRF. Ciasteczka pozwalają również na śledzenie sesji, co jest istotne dla personalizacji treści i analizy zachowań użytkowników. Zgodnie z RODO, należy również informować użytkowników o używaniu ciasteczek oraz uzyskać ich zgodę na ich przetwarzanie.

Pytanie 31

W języku PHP wykorzystano funkcję ```is_float()```. Które z poniższych wywołań tej funkcji zwróci rezultat true?

A. is_float(3.34)
B. is_float(NULL)
C. is_float(334)
D. is_float('3,34')
Zrozumienie, co dokładnie zwraca funkcja is_float(), jest bardzo ważne, jeśli chce się dobrze pracować z typami danych w PHP. Na przykład, jak wpiszesz is_float(334), to dostaniesz false, bo 334 to liczba całkowita, a nie zmiennoprzecinkowa. To może być mylące, bo nie każdy wie, że float to coś konkretnego. Podobnie jest z is_float(NULL) - zwraca false, bo NULL to jakby brak wartości, a nie liczba. Jeszcze jedno – jakbyś wywołał is_float('3,34'), to też dostaniesz false, bo PHP nie rozpozna tego jako float; to traktuje jako tekst. PHP nie konwertuje automatycznie tekstu na float, zwłaszcza jak używasz przecinka, zamiast kropki. Te błędy często biorą się stąd, że ludzie myślą, że PHP sam zrozumie, co mają na myśli. Dlatego warto ogarnąć, jak działa typowanie w PHP i jak używać funkcji tych sprawdzających typy, jak is_float(). Dzięki temu twój kod będzie bardziej stabilny i unikniesz błędów przy jego działaniu.

Pytanie 32

O zmiennej predefiniowanej

$_POST 
w języku PHP można stwierdzić, że
A. jest rozwiniętą wersją tablicy $_SESSION
B. jest odwzorowaniem tablicy $_COOKIE
C. zawiera dane bezpośrednio dostarczone do skryptu z ciasteczka
D. zawiera dane przesłane do skryptu za pośrednictwem formularza
Odpowiedź, że zmienna predefiniowana $_POST zawiera dane przesłane do skryptu z formularza, jest w pełni poprawna. W języku PHP, $_POST to jedna z superglobalnych tablic, która umożliwia dostęp do danych przesyłanych metodą POST. Metoda ta jest powszechnie stosowana w formularzach HTML, gdzie użytkownik może wprowadzać dane, które następnie są wysyłane do serwera. Na przykład, formularz kontaktowy, w którym użytkownik wprowadza swoje imię i adres e-mail, może być przetwarzany za pomocą $_POST, co pozwala na łatwą i bezpieczną obsługę danych. Dobrą praktyką jest również walidacja danych przed ich użyciem, aby zminimalizować ryzyko ataków, takich jak SQL Injection czy XSS. Dzięki zastosowaniu $_POST, programiści mogą przechwytywać i przetwarzać dane użytkowników w bardziej zaawansowany sposób, co pozwala na dynamiczne generowanie treści i interakcję z użytkownikami.

Pytanie 33

Aby w PHP uzyskać dostęp do danych formularza przesyłanych w sposób bezpieczny, należy użyć tablicy

A. $_FILES
B. $_SESSION
C. $_SERVER
D. $_POST
W języku PHP tablica $_POST jest kluczowym narzędziem do obsługi danych przesyłanych za pomocą metody POST, która jest jedną z najczęściej stosowanych metod przesyłania formularzy w aplikacjach webowych. Odpowiedź ta jest prawidłowa, ponieważ $_POST umożliwia dostęp do danych wprowadzonych przez użytkownika w formularzu, które są wysyłane na serwer. Metoda POST jest bezpieczniejsza od metody GET, ponieważ nie ujawnia danych w URL, co jest istotne w kontekście prywatności i bezpieczeństwa. Przykłady zastosowania obejmują formularze logowania, gdzie dane użytkownika, takie jak hasło, są przesyłane do serwera. Stosując $_POST, programista może w łatwy sposób przetwarzać te dane, walidować je, a następnie zapisać w bazie danych lub wykonać inne operacje. W dobrych praktykach programistycznych zaleca się również stosowanie odpowiednich zabezpieczeń, takich jak filtrowanie i walidacja danych, aby uniknąć ataków typu SQL Injection czy XSS. Użycie $_POST jest kluczowe w tworzeniu nowoczesnych i bezpiecznych aplikacji internetowych.

Pytanie 34

Po uruchomieniu kodu PHP

echo date("Y-m");
na ekranie pojawi się bieżąca data w formacie:
A. dnia i roku
B. dnia, miesiąca, roku
C. tylko roku
D. roku oraz miesiąca
Odpowiedź 'rok i miesiąc' jest prawidłowa, ponieważ funkcja 'date' w PHP formatuje datę na podstawie podanego wzorca. W przypadku użycia wzorca 'Y-m', 'Y' oznacza pełny rok (np. 2023), a 'm' oznacza dwucyfrowy miesiąc (np. 03 dla marca). W wyniku działania 'echo date("Y-m");' na ekranie zostanie wyświetlona aktualna data w formacie YYYY-MM, co jest niezwykle przydatne w wielu aplikacjach, takich jak generowanie raportów miesięcznych, archiwizacja danych czy implementacja systemów zarządzania treścią. Użycie tego wzorca jest zgodne z najlepszymi praktykami programistycznymi, które zalecają właściwe formatowanie daty w celu jej późniejszej analizy lub prezentacji. Ponadto, umiejętność manipulacji datami w PHP jest kluczowa w kontekście tworzenia aplikacji webowych, które często wymagają interakcji z użytkownikami w czasie rzeczywistym, a także integracji z bazami danych, gdzie prawidłowe formatowanie daty ma kluczowe znaczenie dla integralności danych.

Pytanie 35

Aby zweryfikować ustawienia w pliku php.ini, można wykonać skrypt PHP, który zawiera polecenie

A. <?php phpinfo(); ?>
B. <?php ini_set(); ?>
C. <?php echo phpversion(); ?>
D. <?php phpcredits(); ?>
Funkcja phpinfo() jest jednym z najczęściej używanych narzędzi w PHP do uzyskiwania szczegółowych informacji o środowisku PHP, w tym ustawieniach konfiguracyjnych z pliku php.ini. Po jej wywołaniu, generowana jest strona HTML zawierająca dane o wersji PHP, zainstalowanych modułach, dostępnych zmiennych i wielu innych istotnych informacjach. Dzięki temu programiści mogą szybko zidentyfikować, jakie opcje są aktywne, co jest szczególnie przydatne przy diagnozowaniu problemów lub optymalizacji aplikacji. Przykładowo, w przypadku występowania błędów związanych z pamięcią lub czasem wykonywania skryptów, programista może skorzystać z phpinfo(), aby sprawdzić, jakie limity są ustawione. Warto również zauważyć, że korzystanie z tej funkcji w środowisku produkcyjnym powinno być ograniczone, aby uniknąć ujawnienia informacji o serwerze. Dobrym praktyką jest ograniczenie dostępu do wyników phpinfo() tylko do zaufanych użytkowników lub wyłączenie jej w wersji produkcyjnej.

Pytanie 36

Zdefiniowano poniższą funkcję w PHP:

function policz($Z) {
    while($Z < 5) {
        $Z += 2 * $Z + 1;
    }
    return $Z;
}
Funkcję policz wywołano z wartością argumentu $Z = 1. Jaki rezultat zostanie zwrócony?
A. 4
B. 1
C. 7
D. 13
Niestety, tutaj coś nie zagrało. W pytaniu była funkcja 'policz' w PHP, która iteracyjnie zwiększa wartość zmiennej $Z, aż ta nie przekroczy 5. W każdej iteracji $Z rośnie o 2 * $Z + 1. Jak widać, przy odpowiednim argumencie początkowym wartość $Z rośnie bardzo szybko. W naszym przypadku zaczynamy z $Z równym 1. Po dwóch krokach mamy już 13, co kończy działanie pętli. Zamiast 1, 7 czy 4, funkcja 'policz' zwraca 13. Kluczowe jest zrozumienie, jak działają te iteracje i pętle w PHP.

Pytanie 37

Gdy zmienna $x przechowuje dowolną dodatnią liczbę naturalną, poniższy kod źródłowy PHP ma na celu wyświetlenie:

$licznik = 0;
while ($licznik != $x) 
{
    echo $licznik;
    $licznik++;
}
A. przypadkowe liczby z zakresu (0, x)
B. kolejne liczby od 0 do x-1
C. liczby wprowadzane z klawiatury, aż do momentu wprowadzenia wartości x
D. kolejne liczby od x do 0
Poprawna odpowiedź to 'kolejne liczby od 0 do x-1'. Kod PHP w pętli 'while' wyświetla kolejne liczby naturalne, zaczynając od 0. Pętla ta będzie kontynuowana, dopóki zmienna $licznik nie osiągnie wartości x, czyli dopóki $licznik < x. Wartością ostatniej liczby, jaką pętla wyświetli, będzie zatem x-1, ponieważ wartość x nie jest już spełnieniem warunku pętli. To ważne rozróżnienie w programowaniu, gdzie często stosuje się różne typy pętli i konstrukcje sterujące. W praktyce, zrozumienie tego mechanizmu jest kluczowe dla manipulowania danymi i tworzenia skryptów o różnych funkcjonalnościach. Pętle są jednym z podstawowych elementów kontroli przepływu w większości języków programowania, a różne ich typy i zastosowania pozwalają na realizację różnorodnych zadań, od prostych operacji na danych do skomplikowanych algorytmów.

Pytanie 38

Aby zweryfikować konfigurację w pliku php.ini, można uruchomić skrypt PHP, który zawiera zapis

A. <?php phpinfo(); ?>
B. <?php echo phpversion(); ?>
C. <?php phpcredits(); ?>
D. <?php ini_set(); ?>
Odpowiedź <?php phpinfo(); ?> jest poprawna, ponieważ funkcja phpinfo() generuje szczegółowy raport na temat konfiguracji PHP, w tym informacje o zainstalowanych rozszerzeniach, wersji PHP, oraz ustawieniach w pliku php.ini. W praktyce, ta funkcja jest niezwykle przydatna przy diagnozowaniu problemów związanych z konfiguracją serwera, ponieważ dostarcza pełen wgląd w aktualne ustawienia środowiska, co pozwala na szybkie zidentyfikowanie ewentualnych niezgodności. Przykładem zastosowania może być sytuacja, w której programista chce sprawdzić, czy określone rozszerzenie PHP jest aktywne lub jakie są wartości domyślne dla różnych dyrektyw, takich jak memory_limit czy upload_max_filesize. Dobrą praktyką w sytuacjach produkcyjnych jest ograniczenie dostępu do skryptów wywołujących phpinfo(), aby nie ujawniać wrażliwych informacji o serwerze osobom nieupoważnionym. Myśląc o bezpieczeństwie aplikacji, warto usunąć takie skrypty po zakończeniu diagnostyki.

Pytanie 39

Wskaż polecenie, które działa identycznie jak instrukcja while w PHP.

$x = 0;
while($x < 5) {
    echo "$x,";
    $x++;
}

Instrukcja 1
for ($x=0; $x<5; $x++) {
    echo "$x,";
    $x++;
}

Instrukcja 2
for ($x=0; $x<5; $x+=2) {
    echo "$x,";
    $x++;
}

Instrukcja 3

for ($x=0; $x<5; $x++) {
    echo "$x,";
}

Instrukcja 4
for ($x=1; $x<=5; $x++) {
    echo "$x,";
}
A. Instrukcja 2
B. Instrukcja 1
C. Instrukcja 4
D. Instrukcja 3
Instrukcja 3 jest funkcjonalnie równoważna podanej instrukcji while w języku PHP. W obu przypadkach pętla zaczyna się z wartością zmiennej x równej 0 i kontynuuje dopóki x jest mniejsze od 5. W każdej iteracji zmienna x jest zwiększana o 1. Wyrażenie warunkowe w pętli for to x<5 co odpowiada warunkowi while $x<5. Część inicjalizacyjna for ustawia zmienną na 0 co jest zgodne z inicjalizacją przed pętlą while. Instrukcje zawarte w pętli wykonują te same operacje wyświetlania wartości x i inkrementacji. W praktyce stosowanie pętli for może być korzystne dla czytelności gdyż wszystkie elementy sterujące pętlą są zgrupowane w jednej linii co ułatwia zrozumienie jej działania. Jest to zgodne z dobrymi praktykami programistycznymi które promują klarowność kodu. Instrukcje for są często wykorzystywane w sytuacjach gdy liczba iteracji jest z góry znana co czyni je bardziej intuicyjnymi w takich przypadkach.

Pytanie 40

Przedstawiony kod PHP nawiązuje połączenie z serwerem bazy danych. Jakiego typu operacje powinny się znaleźć w instrukcji warunkowej w miejscu trzech kropek?

$db = mysqli_connect("localhost", "root", "qwerty", "baza1");
if (!$db) {
...
}
A. Przetwarzanie danych uzyskanych z bazy
B. Obsługa błędu przy nawiązywaniu połączenia
C. Informacja o pomyślnym nawiązaniu połączenia z bazą
D. Zamknięcie połączenia z bazą danych
Zamknięcie bazy danych w kontekście nawiązywania połączenia z bazą danych nie ma sensu, ponieważ w momencie, gdy kod wykonuje sprawdzenie połączenia, to takie połączenie nie zostało jeszcze nawiązane. Próba zamknięcia niezainicjowanego połączenia nie tylko nie przyniesie żadnego efektu, ale także może prowadzić do mylnych wniosków dotyczących kodu. Ponadto, zachowanie takie może wprowadzać w błąd, sugerując, że operacje na bazie danych mogłyby być przeprowadzone w tym momencie, co jest nieprawdziwe. Obsługa danych pobranych z bazy również nie jest właściwym podejściem w momencie, gdy połączenie nie zostało jeszcze ustanowione - przed przetwarzaniem jakichkolwiek danych, najpierw musimy upewnić się, że połączenie jest aktywne. Natomiast komunikat o pomyślnym połączeniu z bazą nie powinien być używany w instrukcji warunkowej, gdyż działa on na zasadzie potwierdzenia, a nie na detekcji błędów. Ważne jest, aby zrozumieć, że każda z tych odpowiedzi nie odpowiada na istotę problemu - w przypadku problemów z połączeniem zwłaszcza w aplikacjach produkcyjnych, brak odpowiedniego komunikatu o błędzie może prowadzić do poważnych trudności w diagnozowaniu i naprawie problemów, co może wpływać na całkowitą funkcjonalność systemu oraz jego niezawodność.