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: 1 maja 2026 11:13
  • Data zakończenia: 1 maja 2026 11:21

Egzamin zdany!

Wynik: 30/40 punktów (75,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Efektem wykonania przedstawionego kodu PHP jest wyświetlenie komunikatu

$a = $c = true;
$b = $d = false;
if(($a && $b) || ($c && $d))
    echo 'warunek1';
elseif(($a && $b) || ($c || $d))
    echo 'warunek2';
elseif(($c && $d) || (!$a))
    echo 'warunek3';
else
    echo 'warunek4';
A. warunek3
B. warunek2
C. warunek4
D. warunek1
Poprawna jest odpowiedź „warunek2”, bo właśnie ten blok warunkowy jako pierwszy spełnia się dla zadanych wartości zmiennych. Rozbijmy to spokojnie na czynniki pierwsze. Na początku mamy przypisania: `$a = $c = true;` oraz `$b = $d = false;`. To oznacza, że `$a` i `$c` są logicznie prawdziwe, a `$b` i `$d` logicznie fałszywe. Pierwszy `if` sprawdza: `($a && $b) || ($c && $d)`. Część `$a && $b` to `true && false`, więc daje `false`. Druga część `$c && $d` to `true && false`, też `false`. Cały warunek to więc `false || false`, czyli `false`. Ten blok się nie wykona. Następnie interpreter PHP przechodzi do `elseif`: `($a && $b) || ($c || $d)`. Znowu `$a && $b` to `false`, ale teraz mamy drugą część: `$c || $d` to `true || false`, czyli `true`. Czyli cały warunek to `false || true`, czyli `true`. W tym momencie PHP wykonuje `echo 'warunek2';` i kończy sprawdzanie dalszych `elseif`/`else` – to jest bardzo ważna cecha konstrukcji `if/elseif/else`: po pierwszym spełnionym warunku reszta jest ignorowana. Praktycznie w PHP (i w innych językach C‑podobnych) takie logiczne łączenie warunków przydaje się np. przy sprawdzaniu uprawnień użytkownika: `if(($isAdmin && $isActive) || $isSuperAdmin)`. Warto pamiętać o priorytetach operatorów `&&` i `||` oraz zawsze dodawać nawiasy, kiedy chcemy jasno zaznaczyć kolejność. Z mojego doświadczenia wynika, że jawne nawiasowanie, nawet tam gdzie nie jest konieczne, zmniejsza liczbę bugów i ułatwia czytanie kodu zespołowi. Dobrą praktyką jest też upraszczanie złożonych warunków, np. przez wyciąganie fragmentów do osobnych, dobrze nazwanych zmiennych: `$hasBasicAccess = $a && $b; $hasExtendedAccess = $c || $d; if($hasBasicAccess || $hasExtendedAccess) ...`. Kod jest wtedy bardziej samodokumentujący i łatwiejszy w utrzymaniu.

Pytanie 2

W języku PHP nie można wykonać

A. Operacji na danych zgromadzonych w bazie danych
B. Obsługiwania danych z formularzy
C. Dynamicznej zmiany treści strony HTML w przeglądarce
D. Tworzenia dynamicznej treści strony
Zmienianie dynamiczne zawartości strony HTML w przeglądarce nie jest możliwe za pomocą języka PHP, ponieważ PHP jest językiem skryptowym działającym po stronie serwera. Oznacza to, że PHP generuje kod HTML, który jest następnie przesyłany do przeglądarki, ale nie ma możliwości modyfikacji tego kodu po jego załadowaniu. Przykładowo, gdy użytkownik wypełnia formularz na stronie i przesyła dane, PHP może przetworzyć te dane na serwerze, ale wszelkie zmiany muszą być wysłane do przeglądarki jako nowa strona lub w odpowiedzi Ajax. W praktyce oznacza to, że dla dynamicznych interakcji na stronie, takich jak zmiana zawartości bez przeładowania, stosuje się JavaScript, który działa po stronie klienta i jest odpowiedzialny za manipulację DOM. W kontekście dobrych praktyk, warto pamiętać o rozdzieleniu logiki przetwarzania danych (PHP) i interakcji użytkownika (JavaScript), co prowadzi do bardziej modułowych i łatwych w utrzymaniu aplikacji webowych.

Pytanie 3

W języku PHP przypisano zmiennej $a wartość 1. Porównanie $a === $b zwraca true, gdy zmienna $b ma przypisaną wartość

A. 1 lub '1'
B. *1
C. '1'
D. '1' lub "1"
Odpowiedź '1' lub "1" jest prawidłowa, ponieważ w PHP operator porównania identyczności (===) sprawdza zarówno wartość, jak i typ porównywanych zmiennych. Zmienna $a zainicjowana wartością 1 jest typu całkowitego (integer). Aby porównanie $a === $b zwróciło true, zmienna $b również musi być tego samego typu i mieć tę samą wartość. Wartość '1' (jako string) jest interpretowana przez PHP w kontekście operatora porównania identyczności i jest zgodna z typem integer, co sprawia, że jest akceptowalna w tym przypadku. Przykładem zastosowania może być sytuacja, gdy dane są pobierane z formularza, gdzie wartości są traktowane jako stringi, a my potrzebujemy porównać je z wartościami liczbowymi w logice aplikacji. Zastosowanie operatora === w takich przypadkach jest zgodne z dobrymi praktykami programistycznymi, ponieważ pozwala uniknąć niejednoznaczności i błędów typów, co jest szczególnie istotne w bardziej złożonych aplikacjach, gdzie poprawność danych jest kluczowa.

Pytanie 4

W PHP utworzenie oraz przypisanie tablicy asocjacyjnej do zmiennej odbywa się poprzez zapis

A. $tab = array (array (1, 2), array (3, 4));
B. $tab = array (); $tab[] = array (1, 2, 3, 4);
C. $tab = array ("a" => 1, "b" => 2, "c" => 3);
D. $tab = array (1, 2, 3, 4);
W niektórych odpowiedziach widzę różne typy tablic w PHP, ale to nie są tablice asocjacyjne. Na przykład zapis $tab = array (1, 2, 3, 4); tworzy tablicę z wartościami numerycznymi, gdzie te wartości mają domyślne indeksy, więc dostęp odbywa się przez numery. To nie pasuje do tego, co znamy jako tablice asocjacyjne, bo potrzebujemy kluczy będących ciągami znaków. Inny przypadek, $tab = array (array (1, 2), array (3, 4)); to tablica wielowymiarowa, gdzie każdy element też jest tablicą. Jest to w porządku w PHP, ale nie ma tu mowy o kluczach asocjacyjnych, więc niestety nie pasuje do kontekstu pytania. A zapis $tab = array (); $tab[] = array (1, 2, 3, 4); dodaje tablicę numeryczną jako element, co znów nie spełnia definicji tablicy asocjacyjnej, bo brakuje kluczy. Wszystkie te struktury mają swoje miejsce w PHP, ale żadna z nich nie jest tablicą asocjacyjną i nie pozwala na przypisanie wartości do konkretnych kluczy, co jest kluczowe w tym pytaniu.

Pytanie 5

Jakie funkcje w języku PHP umożliwiają weryfikację wartości oraz typu zmiennej?

A. implode()
B. var_dump()
C. readfile()
D. strlen()
W języku PHP do sprawdzania wartości i typu zmiennej można wykorzystać funkcję var_dump(). Ta funkcja jest niezwykle przydatna w procesie debugowania, ponieważ wyświetla szczegółowe informacje na temat zmiennej, w tym jej typ, wartość oraz, w przypadku tablic i obiektów, również ich strukturę. Przykładowo, jeśli mamy zmienną $a przypisaną do wartości 10, wywołując var_dump($a), otrzymamy wynik: int(10). Oznacza to, że $a jest zmienną typu całkowitego (integer) o wartości 10. Funkcja ta jest szczególnie użyteczna w sytuacjach, gdy potrzebujemy dokładnych informacji o złożonych strukturach danych, takich jak tablice czy obiekty. Warto zauważyć, że var_dump() jest zgodna z typowymi standardami PHP i często stosowana w praktyce przez programistów do szybkiego diagnozowania problemów w kodzie. Dodatkowo, jej użycie jest zalecane podczas pisania testów jednostkowych, gdyż umożliwia weryfikację stanu zmiennych.

Pytanie 6

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 7

$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. nazwę konta z znakiem @, czyli 'adres@'
C. cały adres e-mail, czyli '[email protected]'
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 8

Fragment kodu w języku PHP przedstawia się następująco (patrz ramka): W wyniku wykonania pętli zostaną wyświetlone liczby

Ilustracja do pytania
A. 0, 4, 8, 12, 16, 20
B. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
C. 0, 4, 8, 12, 16
D. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
Pętla for w PHP to naprawdę podstawowe narzędzie, które pozwala nam w łatwy sposób powtarzać różne operacje na danych. W tej pętli zaczynamy od $i równego 0, a kończymy, kiedy $i osiągnie 20. W każdej iteracji dodajemy 4 do $i, więc wypisujemy liczby od 0 do 20, co 4 jednostki. Super sprawa, jeśli chcemy równomiernie przetwarzać dane. Przykładowo, gdy mamy jakieś tabele z danymi albo potrzebujemy wygenerować wykresy w regularnych odstępach, to taka pętla się przydaje. Stosowanie pętli to też dobra praktyka programistyczna, bo automatyzuje nam powtarzalne zadania, co czyni kod bardziej przejrzystym. Jak zrozumiesz, jak działa ta pętla, to dużo łatwiej będzie ci tworzyć różne algorytmy, co jest super ważne w informatyce.

Pytanie 9

Która z poniższych funkcji PHP służy do ładowania pliku z serwera?

A. mysqli_connect()
B. include()
C. parse_str()
D. echo()
Funkcja <code>mysqli_connect()</code> w PHP jest używana do nawiązywania połączenia z bazą danych MySQL. Jej głównym celem jest umożliwienie komunikacji między skryptem PHP a serwerem baz danych, co jest kluczowe w aplikacjach webowych, które potrzebują przechowywać i pobierać dane. Ta funkcja nie ma jednak nic wspólnego z ładowaniem plików z serwera, co jest zadaniem funkcji <code>include()</code>. Funkcja <code>echo()</code> służy do wyświetlania tekstu lub wartości zmiennych na stronie internetowej. Jest to podstawowe narzędzie do generowania dynamicznej zawartości w PHP, ale nie ma możliwości ładowania plików. Jest to bardziej odpowiednik wyjścia niż narzędzie do manipulacji plikami. Funkcja <code>parse_str()</code> konwertuje ciąg zapytania URL na zmienne PHP. Jest przydatna, gdy chcemy przekształcić dane w formacie URL do użytku w skrypcie PHP, jednak jej zastosowanie jest zupełnie inne niż ładowanie plików. Często używana w kontekście przetwarzania danych GET, ale nie ma związku z ładowaniem struktury zewnętrznych plików. Wybór tych funkcji jako potencjalnych odpowiedzi może wynikać z nieporozumienia odnośnie ich zastosowań, ale każda z nich pełni inną, specyficzną rolę w PHP.

Pytanie 10

W przedstawionym kodzie PHP, co powinno się wyświetlić zamiast znaków zapytania?

$x = mysql_query('SELECT * FROM mieszkancy');
if(!$x)
echo "???????????????????????";
A. Zapytanie zostało zrealizowane pomyślnie
B. Niepoprawna nazwa bazy danych
C. Błąd w trakcie przetwarzania zapytania
D. Nieprawidłowe hasło do bazy danych
Odpowiedź 2 czyli Błąd przetwarzania zapytania jest poprawna ponieważ w kodzie PHP używana jest funkcja mysql_query do wykonania zapytania SQL Funkcja ta zwraca false w przypadku niepowodzenia co oznacza że blok if(!x) zostanie wykonany tylko wtedy gdy wystąpi błąd w przetwarzaniu zapytania Komunikat Błąd przetwarzania zapytania jest więc właściwy ponieważ odzwierciedla sytuację w której zapytanie nie mogło zostać wykonane poprawnie co może być wynikiem wielu czynników takich jak błędy składniowe w zapytaniu brak połączenia z serwerem bazy danych lub nieodpowiednie uprawnienia użytkownika Praktyczne podejście do obsługi błędów w PHP często obejmuje logowanie szczegółowych komunikatów błędów lub przekazywanie ich użytkownikowi w sposób przyjazny dla użytkownika co jest zgodne z najlepszymi praktykami w zakresie programowania Dodatkowo warto wspomnieć że funkcja mysql_query jest przestarzała i nie jest zalecana do użycia w nowych projektach Zaleca się używanie bardziej nowoczesnych funkcji takich jak mysqli_query lub PDO co poprawia bezpieczeństwo i wydajność aplikacji

Pytanie 11

W języku PHP istnieje funkcja, która pozwala na weryfikację, czy dany ciąg stanowi część innego ciągu, to

A. strlen()
B. strtok()
C. strstr()
D. trim()
Trim() jest funkcją, która służy do usuwania białych znaków z początku i końca ciągu. Nie ma związku z wyszukiwaniem podciągów, co sprawia, że jej zastosowanie w kontekście tego pytania jest błędne. Z kolei strtok() jest funkcją, która dzieli ciąg tekstowy na tokeny, co również nie odpowiada na potrzeby określenia, czy jeden ciąg jest fragmentem innego. Użycie strtok() do tego celu wymagałoby dodatkowych kroków i złożoności, co czyni ją nieefektywną w tym kontekście. Ostatnia z wymienionych funkcji, strlen(), zwraca długość ciągu, co również nie odnosi się do problemu sprawdzania przynależności podciągu. Typowe błędy myślowe związane z tymi odpowiedziami to mylenie funkcji manipulujących tekstem i ich właściwego zastosowania. Użytkownicy mogą nie dostrzegać, że każda z tych funkcji ma swoje specyficzne cele i użycie ich w nieodpowiednich kontekstach prowadzi do niepoprawnych rezultatów. Ważne jest, aby zrozumieć, że do sprawdzania, czy jeden ciąg jest częścią drugiego, najlepiej służy strstr(), która jest funkcją optymalną pod kątem wydajności i prostoty użycia.

Pytanie 12

W języku PHP zmienna o nazwie $_SESSION przechowuje

A. zmienne przesyłane do skryptu poprzez formularze
B. zmienne zarejestrowane w aktualnej sesji
C. listę aktywnych sesji na serwerze WWW
D. zmienne przesyłane do skryptu za pośrednictwem ciasteczek (cookie)
Odpowiedzi niepoprawne w tej sytuacji dotyczą różnych aspektów funkcjonalności PHP oraz sposobu, w jaki sesje i dane są zarządzane. Po pierwsze, spis zarejestrowanych sesji na serwerze WWW nie jest przechowywany w $_SESSION. PHP zarządza sesjami poprzez identyfikatory sesji, które są przechowywane w pliku na serwerze, a nie w zmiennej $_SESSION. Ta zmienna służy jedynie do przechowywania danych dla aktywnej sesji użytkownika, co oznacza, że nie ma możliwości dostępu do listy wszystkich sesji. Kolejnym nieporozumieniem jest mylenie zmiennych przesyłanych do skryptu za pomocą formularza z danymi przechowywanymi w sesji. Zmienne form są dostępne przez superglobalną tablicę $_POST lub $_GET, a nie przez $_SESSION. Te dwie formy przesyłania danych mają różne zastosowania, a $_SESSION dotyczy wyłącznie danych przechowywanych w kontekście aktualnej sesji. Ostatnia niepoprawna odpowiedź odnosi się do ciastek (cookie), które również są oddzielnym mechanizmem przechowywania danych. Ciasteczka są używane do przechowywania informacji na komputerze klienta, a ich zawartość jest zarządzana przez przeglądarkę, co jest zupełnie innym procesem niż zarządzanie danymi sesji przez serwer. W rezultacie, $_SESSION skupia się na przechowywaniu danych sesyjnych, podczas gdy ciasteczka i dane form są zarządzane w innych kontekstach.

Pytanie 13

W PHP, aby stworzyć obiekt pkt dla klasy Punkt, której definicja znajduje się poniżej, należy użyć polecenia

class Punkt {
  public $x;
  public $y;
}
A. pkt Punkt();
B. pkt = new Punkt();
C. pkt Punkt;
D. Punkt() pkt;
W języku PHP tworzenie obiektu z zdefiniowanej klasy wymaga użycia słowa kluczowego new. Poprawna instrukcja to pkt = new Punkt();. Słowo new jest używane do dynamicznego alokowania pamięci na nowy obiekt klasy Punkt. W tym przypadku Punkt jest klasą, która została wcześniej zdefiniowana w kodzie i zawiera właściwości publiczne takie jak $x i $y. Kiedy wykonujemy new Punkt(), wywoływany jest konstruktor klasy, który w tym przypadku jest domyślny, ponieważ klasa Punkt nie definiuje własnego konstruktora. Warto zauważyć, że zgodnie z dobrymi praktykami programowania w PHP, każda deklaracja nowego obiektu powinna być poprzedzona słowem new, co zapewnia czytelność i jednoznaczność kodu. Ten sposób tworzenia obiektów jest zgodny ze standardem PSR-12. Praktyczne zastosowanie tworzenia obiektów w PHP jest szerokie i obejmuje m.in. modelowanie danych w aplikacjach, obsługę struktur danych oraz implementację wzorców projektowych, takich jak singleton czy fabryka. Korzystanie z obiektów pozwala na przejrzyste i zorganizowane zarządzanie kodem oraz łatwą jego rozbudowę o nowe funkcje.

Pytanie 14

Funkcją w PHP, która służy do tworzenia ciasteczek, jest

A. echocokie()
B. createcookie()
C. addcokie()
D. setcookie()
Funkcja setcookie() w języku PHP jest kluczowym narzędziem do zarządzania ciasteczkami (cookies) na poziomie serwera. Umożliwia ona tworzenie i konfigurowanie ciasteczek, które następnie są przesyłane do przeglądarki użytkownika. Ciasteczka są używane do przechowywania informacji o sesji, preferencjach użytkownika oraz danych śledzących. Funkcja setcookie() przyjmuje kilka argumentów, w tym nazwę ciasteczka, jego wartość, czas wygaśnięcia (w postaci znacznika czasowego), ścieżkę, domenę oraz flagi bezpieczeństwa. Przykładowe użycie funkcji może wyglądać następująco: setcookie('user', 'John Doe', time() + 86400, '/'); co tworzy ciasteczko o nazwie 'user', z wartością 'John Doe', które wygasa po jednym dniu. Ważne jest, aby zwrócić uwagę, że funkcja ta musi być wywoływana przed jakimkolwiek wysyłaniem nagłówków HTTP, co oznacza, że należy ją umieścić na początku skryptu PHP. Również, aby znacząco poprawić bezpieczeństwo, warto korzystać z flagi HttpOnly, aby zminimalizować ryzyko ataków XSS. Zastosowanie setcookie() w odpowiedni sposób przyczynia się do poprawy doświadczeń użytkowników oraz zwiększa funkcjonalność aplikacji internetowych.

Pytanie 15

W PHP, aby usunąć białe znaki z początku i końca ciągu tekstowego, można skorzystać z funkcji

A. trim()
B. sort()
C. strlen()
D. time()
Funkcja trim() w języku PHP jest niezwykle przydatna do usuwania zbędnych spacji oraz innych białych znaków z początku i końca ciągu znaków. Jest to funkcjonalność, która jest często wykorzystywana w różnych aplikacjach, szczególnie w kontekście przetwarzania danych wejściowych od użytkowników, gdzie niechciane spacje mogą prowadzić do błędów podczas walidacji lub przechowywania danych w bazie danych. Przykład użycia funkcji trim() jest prosty: jeśli mamy zmienną $text = ' Przykladowy tekst '; używając trim($text), otrzymamy 'Przykladowy tekst'. Funkcja ta przyjmuje również drugi argument, który pozwala na określenie dodatkowych znaków do usunięcia. Na przykład trim($text, "a ") usunie zarówno spacje, jak i litery 'a' z końców ciągu. Zgodnie z dokumentacją PHP, trim() jest częścią standardowej biblioteki funkcji stringowych, co czyni ją niezawodnym narzędziem w każdej aplikacji PHP."

Pytanie 16

Wykonanie następującego polecenia PHP umożliwia:

$zapytanie = mysqli_query($db, "UPDATE ...");
A. zmianę danych w bazie
B. pobranie danych z bazy
C. zmianę struktury bazy
D. dodanie nowych danych do bazy
Polecenie PHP mysqli_query z użyciem instrukcji SQL UPDATE służy do modyfikacji danych w bazie danych. Funkcja mysqli_query umożliwia wykonywanie zapytań SQL na połączeniu z bazą danych reprezentowanym przez zmienną $db. Instrukcja UPDATE jest stosowana do aktualizacji istniejących rekordów w tabeli w bazie danych. Przykładowo, jeśli chcesz zaktualizować pole nazwa w tabeli użytkownicy, możesz użyć polecenia UPDATE users SET name='NowaNazwa' WHERE id=1. To podejście umożliwia dynamiczne zarządzanie danymi, co jest kluczowe w aplikacjach internetowych wymagających bieżącej aktualizacji informacji. W praktyce należy pamiętać o dobrych praktykach, takich jak walidacja danych wejściowych i zabezpieczenie przed atakami SQL injection, np. poprzez stosowanie przygotowanych zapytań. Aktualizowanie danych w bazie to jedna z podstawowych operacji CRUD (Create Read Update Delete), które są fundamentem zarządzania danymi w większości aplikacji obsługujących bazy danych. Poprawne użycie tej funkcji wymaga zrozumienia struktury SQL i znajomości specyfiki używanego systemu zarządzania bazą danych.

Pytanie 17

Aby uzyskać dane dotyczące środowiska, w którym działa serwer obsługujący PHP, należy użyć funkcji

A. phpgetinfo()
B. phpinfo()
C. php()
D. phpinformation()
Funkcja phpinfo() jest kluczowym narzędziem dla programistów i administratorów systemów, pozwalającym na uzyskanie szczegółowych informacji o środowisku PHP zainstalowanym na serwerze. Po jej wywołaniu otrzymujemy kompletny zestaw danych, który obejmuje wersję PHP, zainstalowane rozszerzenia, konfiguracje oraz informacje o serwerze, takie jak wersja serwera HTTP. Przykładowe użycie polega na umieszczeniu w skrypcie PHP linii <?php phpinfo(); ?>, co spowoduje wygenerowanie strony z informacjami, które mogą być przydatne w diagnostyce problemów lub podczas optymalizacji aplikacji. Funkcja ta jest zgodna ze standardami PHP i jest powszechnie stosowana w celu monitorowania środowiska pracy. Ważne jest, aby pamiętać, że udostępnianie wyników phpinfo() publicznie może stanowić zagrożenie dla bezpieczeństwa, dlatego zaleca się ograniczenie dostępu do tej informacji tylko do zaufanych użytkowników i środowisk deweloperskich. W kontekście rozwoju aplikacji, phpinfo() jest również pomocne przy identyfikacji dostępnych ustawień konfiguracyjnych oraz ich wartości, co jest nieocenione podczas procesu rozwoju i testowania.

Pytanie 18

Określ rezultat działania skryptu napisanego w języku PHP ```PHP "Perl",14=>"PHP",20=>"Python",22=>"Pike"); asort($tablica); print("

");
print_r($tablica);
print("
"); ?> ```

Ilustracja do pytania
A. rys. B
B. rys. D
C. rys. A
D. rys. C
Poprawna odpowiedź wskazuje uporządkowanie tablicy asocjacyjnej według wartości. Funkcja asort() w języku PHP sortuje tablicę według wartości, zachowując klucze. Oznacza to, że elementy zostaną uporządkowane alfabetycznie według nazw języków, co w tym przypadku prowadzi do kolejności PHP Perl Pike Python. Klucze pozostają przypisane do swoich wartości co jest ważnym aspektem przy pracy z tablicami asocjacyjnymi w PHP. Praktyczne zastosowanie tej funkcji obejmuje np. sortowanie list produktów według ich nazw w aplikacjach e-commerce. Dobre praktyki programistyczne sugerują użycie funkcji sortujących z zachowaniem kluczy w przypadku gdy klucze te mają istotne znaczenie np. unikalne identyfikatory. Zrozumienie jak działa sortowanie w PHP pozwala na efektywne zarządzanie danymi i poprawia optymalizację kodu.

Pytanie 19

Jak można zaznaczyć komentarz w kodzie PHP?

A. /* … */
B. /? … ?/
C. <? … ?>
D. <!-- …. -->
Komentarze w kodzie PHP można umieszczać za pomocą znaków /* … */. Jest to standardowy sposób na dodawanie notatek, które są ignorowane przez interpreter PHP. Komentarze wieloliniowe są szczególnie przydatne w przypadku, gdy chcemy opisać większe fragmenty kodu lub wyłączyć sekcje kodu bez ich usuwania. Na przykład, możemy umieścić w komentarzach informacje o autorze, dacie powstania lub szczegóły dotyczące funkcjonalności danej funkcji. Dobrą praktyką jest również dokumentowanie ważnych informacji dotyczących zmiennych czy parametrów funkcji, co ułatwia przyszłą konserwację kodu. Warto pamiętać, że użycie komentarzy jest kluczowe w pracy zespołowej lub w projektach długoterminowych, gdzie zrozumienie kodu przez innych programistów może być kluczowe dla sukcesu projektu. Ponadto, stosowanie komentarzy zgodnie z dobrymi praktykami programowania zwiększa czytelność kodu i ułatwia jego późniejsze modyfikacje oraz debugowanie.

Pytanie 20

Ile razy zostanie wykonana pętla przedstawiona w kodzie PHP?

for($i = 0; $i < 25; $i += 5) { ...... }
A. 25
B. 0
C. 5
D. 26
Pętla for w PHP, zdefiniowana jako for($i = 0; $i < 25; $i += 5), będzie wykonywana do momentu, gdy warunek $i < 25 będzie spełniony. Początkowa wartość $i to 0, a w każdej iteracji zwiększamy $i o 5. Wartości $i w kolejnych iteracjach będą wynosiły: 0, 5, 10, 15, 20. Po piątej iteracji, gdy $i osiągnie wartość 25, warunek $i < 25 przestanie być spełniony, co zakończy działanie pętli. W sumie, pętla wykona się dokładnie pięć razy. Zrozumienie działania pętli for jest kluczowe w programowaniu, ponieważ pozwala na automatyzację wielu zadań, co jest niezbędne w tworzeniu efektywnych i zoptymalizowanych aplikacji. Przykłady zastosowania to iteracja przez elementy tablic, generowanie numerów identyfikacyjnych czy przetwarzanie danych w bazach.

Pytanie 21

Do czego służy funkcja PHP o nazwie mysql_num_rows?

A. zwracać rekord, którego numer został przekazany jako parametr funkcji
B. przyporządkować numery rekordom w bazie danych
C. podawać liczbę wierszy, które są w wynikach zapytania
D. oddawać następny rekord z wyników zapytania
Wszystkie pozostałe odpowiedzi są niepoprawne z kilku kluczowych powodów. Pierwsza z niepoprawnych odpowiedzi sugeruje, że funkcja mysql_num_rows ma na celu ponumerowanie rekordów w bazie danych. Takie podejście jest mylące, ponieważ mysql_num_rows nie modyfikuje ani nie przechowuje żadnych danych w bazie, a jedynie zwraca informację o liczbie wierszy w zestawie wyników, co w żaden sposób nie wiąże się z ich numerowaniem. Kolejna błędna odpowiedź wskazuje, że funkcja miałaby zwracać kolejny rekord z wynikami zapytania. W rzeczywistości, mysql_num_rows nie zwraca danych samych w sobie, lecz jedynie informację o ich liczbie, co czyni tę odpowiedź zupełnie nietrafioną. Ostatnia niepoprawna odpowiedź sugeruje, że funkcja zwraca rekord na podstawie numeru podanego w jej parametrze. Znowu, taka interpretacja jest nieprawidłowa, ponieważ mysql_num_rows nie przyjmuje parametrów odnoszących się do konkretnych rekordów, a jedynie do zmiennej wynikowej, która zawiera efekty zapytania SQL. W związku z tym, każde z tych stwierdzeń nieodzwierciedla rzeczywistej funkcji mysql_num_rows i jej zastosowania w kontekście zarządzania i przetwarzania danych w PHP.

Pytanie 22

W PHP zmienna $_GET stanowi zmienną

A. predefiniowaną, wykorzystywaną do zbierania danych formularza po nagłówkach żądania HTTP (informacje z formularza nie są widoczne w URL)
B. utworzoną przez autora strony, przeznaczoną do przesyłania danych z formularza przez adres URL
C. predefiniowaną, służącą do przesyłania informacji do skryptów PHP przez adres URL
D. zwykłą, utworzoną przez autora strony
Zmienna $_GET w języku PHP jest predefiniowaną superglobalną tablicą, która służy do zbierania danych przesyłanych metodą GET, co oznacza, że dane te są dołączane do adresu URL po znaku zapytania. Umożliwia to łatwe przekazywanie informacji, takich jak wartości z formularzy, parametry zapytań czy identyfikatory produktów, w sposób czytelny dla użytkowników. Przykładowo, gdy użytkownik wypełnia formularz na stronie, a następnie klika przycisk przesyłania, dane są przesyłane do skryptu PHP, co można zobaczyć w adresie URL: `example.com/index.php?name=John&age=30`. Wartości te można następnie odczytać w skrypcie za pomocą $_GET['name'] i $_GET['age']. Warto dodać, że korzystanie z metody GET ma swoje ograniczenia, takie jak maksymalna długość adresu URL oraz możliwość przesyłania tylko danych tekstowych. W standardach bezpieczeństwa warto również pamiętać o sanitizacji i walidacji danych wejściowych, aby zapobiec atakom typu injection czy cross-site scripting (XSS).

Pytanie 23

Kod PHP z fragmentem ```if(empty($_POST["name"])){ $nameErr = "Name is required"; }``` służy do obsługi

A. formularza
B. bazy danych
C. sesji
D. ciasteczek
Przedstawiony fragment kodu PHP sprawdza, czy w przesłanym formularzu (metodą POST) zawartość pola 'name' jest pusta. Jeśli tak, ustawia zmienną $nameErr z komunikatem "Name is required", co oznacza, że pole imienia jest wymagane. Tego typu walidacja jest kluczowym elementem przy pracy z formularzami, ponieważ pozwala na zapewnienie, że użytkownik dostarcza wszystkie niezbędne dane przed ich przetworzeniem. W praktyce, walidacja po stronie serwera jest niezbędna dla bezpieczeństwa aplikacji oraz poprawności danych, które są później przetwarzane i przechowywane w bazie danych. Standardy branżowe sugerują, aby każdy formularz miał walidację zarówno po stronie klienta (JavaScript), jak i serwera (PHP), aby minimalizować ryzyko nieprawidłowych danych i ataków, takich jak SQL Injection. Przykładowo, w formularzach rejestracyjnych i logowania, walidacja pól takich jak imię, email czy hasło jest powszechną praktyką, aby poprawić doświadczenie użytkownika oraz bezpieczeństwo aplikacji.

Pytanie 24

Która z poniższych funkcji sortujących, stosowanych w języku PHP, porządkuje tablicę asocjacyjną według kluczy?

A. sort()
B. asort()
C. rsort()
D. ksort()
Funkcja ksort() w PHP sortuje tablice asocjacyjne według ich kluczy, co oznacza, że klucze będą posortowane w naturalnej kolejności, a wartości pozostaną przypisane do swoich oryginalnych kluczy. Przykładowo, jeśli masz tablicę, powiedzmy $arr = array('b' => 2, 'a' => 1, 'c' => 3); to po użyciu ksort($arr), dostaniesz $arr = array('a' => 1, 'b' => 2, 'c' => 3). To naprawdę przydatna funkcja, bo dzięki niej można łatwo zorganizować i uporządkować dane. Kiedy korzystasz z ksort(), poprawiasz przejrzystość tablicy, a to na pewno zwiększa efektywność w pracy z danymi. No i warto dodać, że ksort() jest standardową funkcją w dokumentacji PHP, więc jest dość stabilna i popularna wśród programistów.

Pytanie 25

Funkcji session_start() w PHP należy używać podczas realizacji

A. każdej strony, która wykorzystuje ciasteczka
B. przetwarzania formularzy
C. ładowania danych z zewnętrznych plików
D. wielostronicowej strony internetowej, która wymaga dostępu do danych przy przechodzeniu między stronami
Funkcja session_start() jest kluczowym elementem zarządzania sesjami w PHP, co jest niezbędne w kontekście wielostronicowych witryn internetowych. Jej głównym zadaniem jest inicjalizacja sesji, która pozwala na przechowywanie i udostępnianie danych użytkownika pomiędzy różnymi stronami serwisu. Gdy wywołasz session_start(), PHP sprawdza, czy istnieje już aktywna sesja. Jeśli tak, został załadowany odpowiedni identyfikator sesji, co umożliwia dostęp do danych przechowywanych w superglobalnej tablicy $_SESSION. Przykładami zastosowania mogą być koszyki zakupowe, gdzie użytkownik dodaje produkty na różnych stronach, a dane o tych produktach muszą być zachowane i dostępne na każdej z nich. Dobre praktyki zalecają, aby session_start() było wywoływane na początku skryptu, przed jakimkolwiek wyjściem na ekran, aby uniknąć problemów z nagłówkami HTTP. Ponadto, zarządzanie sesjami powinno być realizowane z uwzględnieniem bezpieczeństwa, np. poprzez regenerację identyfikatorów sesji po zalogowaniu oraz zabezpieczenie przed atakami CSRF.

Pytanie 26

W języku PHP zapis $b++ jest równoważny zapisowi

A. $b = $b + 1
B. $b == $b
C. $b == $b + $b
D. $b = $b + $b
Operator $b++ w PHP bywa mylony z różnymi innymi operacjami na zmiennych, głównie dlatego, że wygląda niepozornie, a pod spodem robi konkretną arytmetykę. Kluczowe jest to, że ++ oznacza zawsze inkrementację, czyli zwiększenie wartości liczbowej dokładnie o 1. Nie ma tu ani porównania, ani mnożenia, ani dodawania wartości do samej siebie w sensie podwajania. Jeśli ktoś patrzy na zapis $b == $b i kojarzy go z jakąś równoważnością, to trzeba jasno powiedzieć: podwójny znak równości w PHP jest operatorem porównania, a nie przypisania. Taka instrukcja sprawdza tylko, czy dwie wartości są równe logicznie, i zwraca true albo false. Nie zmienia ona w ogóle zawartości zmiennej b. W kodzie typu $b == $b + $b zachodzi więc tylko porównanie, które zwykle będzie fałszywe, bo jedna strona jest dwa razy większa od drugiej, ale sama zmienna b pozostaje bez zmian. To jest typowy błąd początkujących: mylenie = (przypisanie) z == (porównanie). Drugi obszar nieporozumień to dodawanie zmiennej do samej siebie. Zapis $b = $b + $b oznacza podwojenie wartości, czyli matematycznie 2 * b. To zupełnie coś innego niż $b++, które robi b = b + 1. W algorytmach, gdzie liczymy np. liczbę elementów, iterację po tablicy, licznik odwiedzin, użycie podwojenia zamiast inkrementacji kompletnie rozwala logikę programu. Z mojego doświadczenia wynika, że wiele takich pomyłek bierze się z pośpiechu i braku nawyku dokładnego czytania operatorów. W dobrych praktykach programistycznych zaleca się używanie operatorów skróconych, takich jak ++, --, +=, ale tylko wtedy, gdy dokładnie rozumiemy, co one robią. Warto też pamiętać, że w PHP semantyka operatorów porównania i przypisania jest jasno zdefiniowana w dokumentacji, a trzymanie się tych standardów pozwala uniknąć subtelnych błędów logicznych. Dlatego przy każdym tego typu pytaniu warto na spokojnie przeanalizować, czy wynik ma zmieniać wartość zmiennej, czy tylko ją sprawdzać, oraz o ile ma się ta wartość zmienić: o 1, czy może ma być podwojona lub pomnożona przez coś innego.

Pytanie 27

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

$Napis = "ZaWszE SpRaWdZ swoj KoD";
$Nowy_Napis = strtolower($Napis);
A. zAwSZe sPrAwDz SWOJ kOd
B. zawsze sprawdz swoj kod
C. ZaWszE
D. ZAWSZE SPRAWDZ SWOJ KOD
Odpowiedź 'zawsze sprawdz swoj kod' jest poprawna, ponieważ funkcja strtolower() w PHP konwertuje wszystkie znaki w łańcuchu na małe litery. W przypadku podanego kodu, zmienna $Napis zawiera tekst 'ZaWszE SpRaWdZ swoj KoD', który po zastosowaniu funkcji strtolower() przekształca się na 'zawsze sprawdz swoj kod'. Praktyczne zastosowanie tej funkcji jest bardzo istotne w kontekście normalizacji danych wejściowych, szczególnie w aplikacjach internetowych, gdzie wielkość liter może wpływać na sposób przechowywania, wyszukiwania lub porównywania tekstów. Warto również podkreślić, że w przypadku korzystania z baz danych, stosowanie jednolitej konwencji zapisu (np. zawsze małe litery) może zminimalizować ryzyko błędów i niejednoznaczności. Dobrymi praktykami jest także walidacja danych użytkowników oraz przygotowywanie ich do dalszego przetwarzania, co sprzyja lepszej organizacji kodu i efektywności aplikacji.

Pytanie 28

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 29

W języku PHP, przy pracy z bazą MySQL, aby zakończyć sesję z bazą, należy wywołać

A. mysqli_rollback()
B. mysqli_exit()
C. mysqli_commit()
D. mysqli_close()
Odpowiedź mysqli_close() jest prawidłowa, ponieważ ta funkcja jest używana do zamknięcia połączenia z bazą danych MySQL w języku PHP. Po zakończeniu wszystkich operacji na bazie danych, zaleca się wywołanie tej funkcji, aby zwolnić zasoby systemowe oraz zamknąć połączenie, co jest zgodne z dobrymi praktykami programistycznymi. Użycie mysqli_close() jest istotne, ponieważ niezamknięte połączenia mogą prowadzić do wycieków pamięci i wyczerpania dostępnych zasobów, co z kolei może wpłynąć na wydajność aplikacji. W praktyce, jeśli mamy otwarte połączenie z bazą danych, po zakończeniu operacji, takich jak pobieranie lub wstawianie danych, używamy mysqli_close($connection), gdzie $connection to nasza zmienna reprezentująca połączenie. Oprócz tego, pamiętajmy, że dbanie o odpowiednie zarządzanie połączeniami ma kluczowe znaczenie dla bezpieczeństwa i stabilności naszych aplikacji.

Pytanie 30

Na podstawie przydzielenia wartości do zmiennych w języku PHP można zauważyć, że

$zmienna1 = 15;
$zmienna2 = "15";
$zmienna3 = (string) $zmienna1;
A. zmienna1 i zmienna2 mają ten sam typ.
B. wszystkie zmienne mają ten sam typ.
C. zmienna2 i zmienna3 mają ten sam typ.
D. zmienna1 i zmienna3 mają ten sam typ.
Nie do końca to jest dobre, co mówisz, bo $zmienna1 to liczba całkowita (integer), a $zmienna2 to string. Typy danych w PHP mają znaczenie, bo różnie się zachowują w trakcie działania. Liczby są liczone, a teksty traktowane jako znaki. Mimo że obie pokazują "15", to ich typy są inne, co może prowadzić do błędów. Z $zmienna1 i $zmienna3 też jest nieciekawie, bo mimo że to liczby, to jednak typy się różnią - $zmienna1 to integer, a $zmienna3 to string. Często można się w tym pogubić, zakładając, że mając te same wartości, są też tego samego typu. Jak mówisz, że trzy zmienne są takie same, to pokazujesz, że nie do końca masz jasność co do typów w PHP. Pamiętaj, żeby zwracać uwagę na rzutowanie typów, bo niedopatrzenia mogą skutkować problemami w kodzie. Rekomenduję, żeby programiści regularnie sięgać do dokumentacji i używać dobrych praktyk, by lepiej ogarnąć temat typów danych w swoich projektach.

Pytanie 31

Kod

$liczba2 = &$liczba1;
wskazuje, że zmienna $liczba2 jest
A. wskaźnikiem do $liczba1
B. iloczynem logicznym ze zmienną $liczba1
C. negacją logiczną zmiennej $liczba1
D. referencją do $liczba1
Zmienna \$liczba2 jest referencją do zmiennej \$liczba1, co w języku PHP oznacza, że obie zmienne odwołują się do tego samego miejsca w pamięci. Dzięki temu każda zmiana wartości w jednej z nich automatycznie wpływa na drugą. Użycie referencji jest przydatne w sytuacjach, gdzie potrzebujemy pracować z dużymi strukturami danych bez tworzenia ich kopii, co pozwala na oszczędność pamięci i zwiększenie wydajności. Standardowym sposobem tworzenia referencji w PHP jest użycie operatora ampersand (&) przed nazwą zmiennej, co widzimy w przedstawionym kodzie. Dobre praktyki programistyczne sugerują stosowanie referencji w sposób przemyślany, aby uniknąć trudności w debugowaniu kodu, które mogą wynikać z nieoczekiwanych zmian wartości zmiennych. Referencje są również często wykorzystywane w funkcjach, aby przekazać zmienne przez referencję, co pozwala na modyfikację oryginalnych wartości przesyłanych argumentów."

Pytanie 32

Jakiego języka skryptowego ogólnego zastosowania powinno się użyć do tworzenia aplikacji internetowych, które są zintegrowane z HTML i działają na serwerze?

A. C#
B. PHP
C. JavaScript
D. Perl
PHP (Hypertext Preprocessor) to język skryptowy ogólnego przeznaczenia, który został zaprojektowany do tworzenia dynamicznych stron internetowych, co czyni go idealnym rozwiązaniem do budowy aplikacji webowych. Jako język uruchamiany po stronie serwera, PHP generuje HTML, który jest następnie przesyłany do przeglądarki użytkownika, co pozwala na interakcję z bazami danych, sesjami użytkowników i innymi elementami. Dzięki bogatej bibliotece funkcji oraz rozbudowanej społeczności, PHP jest często wykorzystywany w aplikacjach takich jak WordPress, Drupal czy Joomla. Ponadto, PHP wspiera różnorodne bazy danych, w tym MySQL, co umożliwia tworzenie zaawansowanych aplikacji zintegrowanych z danymi. Przykładem dobrych praktyk w PHP jest stosowanie wzorców projektowych, takich jak MVC (Model-View-Controller), które zwiększają czytelność i modularność kodu. Dzięki temu, programiści mogą łatwiej utrzymywać i rozwijać aplikacje, co jest kluczowe w dynamicznie zmieniającym się świecie technologii webowych.

Pytanie 33

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

A. pobierze dane z formularza, w którym pole input pozostało puste
B. będzie pisać kod bez zastosowania wcięć
C. nie umieści średnika po wyrażeniu w instrukcji if, gdy po nim występuje sekcja else
D. będzie definiował zmienne w obrębie warunku
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 34

Pętla zapisana w języku PHP wstawi do tablicy liczby:

$x = 0;
for ($i = 0; $i < 10; $i++)
{
    $tabl[$i] = $x;
    $x = $x + 10;
}
A. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
B. 0, 10, 20, 30, 40, 50, 60, 70, 80, 90
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
D. 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
Gratulacje, Twoja odpowiedź jest poprawna. Pętla zaczyna się od $x = 0 i wykonuje się 10 razy ($i od 0 do 9). W każdej rundzie pętli, do tablicy $tabl dodawana jest aktualna wartość $x, a następnie $x jest zwiększane o 10. To jest tzw. pętla for, która jest jednym z najbardziej podstawowych mechanizmów programowania. Dzięki tej pętli możemy kontrolować ilość iteracji, które chcemy wykonać. W tym przypadku, iteracja odbywa się 10 razy, za każdym razem inkrementując $x o 10. Niezależnie od tego, czy korzystasz z PHP, czy innego języka, konstrukcje pętli są niezwykle ważne i warto zrozumieć ich działanie. PHP, jak wiele innych języków programowania, posiada wiele różnych typów pętli - for, while, do-while, each, które mają swoje szczególne zastosowania w zależności od kontekstu.

Pytanie 35

Jakim poleceniem można uzyskać konfigurację serwera PHP, w tym dane takie jak: wersja PHP, system operacyjny serwera oraz wartości przedefiniowanych zmiennych?

A. phpcredits();
B. print_r(ini_get_all());
C. echo phpversion();
D. phpinfo();
Funkcja phpinfo() jest standardowym narzędziem w PHP, które dostarcza szczegółowych informacji o konfiguracji serwera oraz wersji PHP, która jest aktualnie używana. Wywołanie tej funkcji generuje stronę HTML z informacjami o ustawieniach PHP, w tym o zainstalowanych rozszerzeniach, włączonych opcjach oraz wartości przedefiniowanych zmiennych. Dodatkowo, phpinfo() prezentuje szczegóły dotyczące środowiska serwera, takie jak system operacyjny, serwer WWW oraz zmienne środowiskowe. Praktycznie, jest to niezwykle przydatne narzędzie dla programistów oraz administratorów serwerów, które umożliwia szybkie zdiagnozowanie problemów z konfiguracją czy identyfikację, które rozszerzenia PHP są dostępne. W kontekście bezpieczeństwa najlepiej jest używać tej funkcji tylko w środowisku developerskim lub lokalnym, aby uniknąć wycieku szczegółowych informacji o serwerze na produkcji. Zgodnie z najlepszymi praktykami, po zakończeniu diagnostyki, powinno się dezaktywować dostęp do tego typu informacji.

Pytanie 36

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. nazwę bazy danych
C. lokalizację serwera bazy danych
D. nazwę użytkownika
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 37

Jaką wartość przyjmie zmienna $a po wykonaniu poniższej sekwencji poleceń w języku PHP?

$a = 1; $a++; $a += 10; --$a;
A. 11
B. 12
C. 10
D. 1
Niepoprawna odpowiedź, ale nie przejmuj się, pomyłki zdarzają się. W tym przypadku warto zrozumieć, jak działają operacje matematyczne w języku PHP. W kodzie PHP, kiedy mamy sekwencję operacji, są one wykonywane od lewej do prawej. Najpierw inicjalizujemy zmienną wartością 1, następnie zwiększamy tę wartość o 1 (co daje nam 2), dodajemy do niej 10 (co daje nam 12), a na końcu pomniejszamy tę wartość o 1 (co daje nam 11). Jeśli wybrałeś odpowiedź 12, to być może pominąłeś ostatnią operację, którą jest odjęcie 1. Jeśli wybrałeś odpowiedź 10, to prawdopodobnie zignorowałeś operację dodawania 10. A jeśli wybrałeś odpowiedź 1, to być może nie zrozumiałeś, że operacje są wykonane sekwencyjnie, a nie izolowane.

Pytanie 38

Jaką rolę pełni funkcja PHP o nazwie mysql_num_rows()?

A. zwraca rekord o numerze podanym w argumencie funkcji
B. numeruje rekordy w bazie danych
C. zwraca następny rekord z wynikami zapytania
D. zwraca ilość wierszy znajdujących się w rezultacie zapytania
Wybór odpowiedzi, że funkcja mysql_num_rows() zwraca rekord, którego numer podany został w parametrze funkcji, jest błędny, ponieważ nie odzwierciedla rzeczywistego działania tej funkcji. mysql_num_rows() nie ma możliwości indeksowania rekordów ani bezpośredniego ich zwracania; jej jedyną rolą jest zliczanie wierszy w zestawie wyników z zapytania SQL. Kolejny wybór sugerujący, że funkcja ponumerowuje rekordy w bazie danych, uwidacznia nieporozumienie dotyczące operacji na bazach danych. W rzeczywistości, numeracja rekordów jest zadaniem, które powinno być rozwiązywane na poziomie aplikacji, a nie na poziomie bazy danych. Również odpowiedź mówiąca, że funkcja zwraca kolejny rekord z wynikami zapytania, wprowadza w błąd, ponieważ mysql_num_rows() nie jest przeznaczona do nawigacji po wynikach; nie zwraca konkretnego rekordu, lecz jedynie liczbę dostępnych wierszy. Typowy błąd myślowy przy takich odpowiedziach polega na pomyleniu funkcji do zliczania z funkcjami, które manipulują lub przetwarzają dane. Rozumienie funkcji i ich właściwości jest kluczowe dla efektywnego programowania w PHP oraz dla optymalizacji interakcji z bazami danych.

Pytanie 39

Dany fragment kodu ilustruje składnię danego języka

Ilustracja do pytania
A. PHP
B. C#
C. JavaScript
D. C
Kod przedstawiony w pytaniu jest napisany w języku PHP który jest popularnym językiem skryptowym stosowanym na serwerach do generowania dynamicznych stron internetowych Zaczyna się od znacznika otwierającego '<?php' co jasno wskazuje na PHP W kodzie użyte są funkcje takie jak file_get_contents fopen fwrite i fclose które są typowe dla PHP i służą do manipulacji plikami Funkcja file_get_contents służy do odczytywania zawartości pliku co jest niezbędne do pobrania aktualnej wartości zmiennej Silosc Następnie zmienna ta jest inkrementowana aby zwiększyć jej wartość o jeden co jest powszechnie stosowane w licznikach odwiedzin stron internetowych PHP jako język skryptowy pozwala na łatwe manipulowanie danymi serwera a także na integrację z bazami danych i szeroką gamę funkcji sieciowych i narzędzi co czyni go jednym z najczęściej używanych języków do tworzenia aplikacji webowych Dobrym standardem jest stosowanie PHP w przypadku gdy potrzebne jest dynamiczne generowanie treści oraz zarządzanie danymi użytkowników

Pytanie 40

Jakim sposobem w języku PHP można zapisać komentarz zajmujący kilka linii?

A. <!-- -->
B. #
C. //
D. /* */
W języku PHP, sposób komentowania bloku komentarza w kilku liniach to użycie znaków /* i */. Taki sposób pozwala na umieszczenie dowolnej ilości tekstu w obrębie tych znaków, co jest niezwykle przydatne, gdy chcemy opisać bardziej złożoną funkcję lub fragment kodu. Na przykład, w czasie tworzenia dokumentacji kodu, często stosujemy bloki komentarzy do szczegółowego opisania działania funkcji, parametrów oraz zwracanych wartości. Dzięki temu każdy programista, który będzie pracował z naszym kodem w przyszłości, może szybko zrozumieć jego przeznaczenie. Dobrą praktyką jest również umieszczanie daty aktualizacji oraz informacji o autorze w takich blokach, co ułatwia zarządzanie projektem. Stosowanie bloków komentarzy jest zgodne z konwencjami programistycznymi, co zwiększa czytelność kodu i jego późniejszą konserwację.