KWALIFIKACJA INF3 - STYCZEŃ 2016

PYTANIE NR 35.
Funkcja phpinfo() pozwala na
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Funkcja phpinfo() wyświetla szczegółowe informacje o konfiguracji PHP na serwerze: wersję PHP, włączone moduły i ustawienia dyrektyw. Służy do diagnostyki środowiska uruchomieniowego, a nie do inicjowania kodu, podglądu konkretnych zmiennych aplikacji ani typowego debugowania.

Pełne wyjaśnienie:

Funkcja phpinfo() służy do uzyskania informacji o środowisku pracy serwera obsługującego PHP, czyli do prezentacji szczegółów konfiguracji interpretera PHP oraz parametrów środowiska. Typowo pokazuje m.in. wersję PHP, dostępne rozszerzenia/moduły, wartości wielu ustawień konfiguracyjnych oraz informacje o kompilacji i wybranych zmiennych środowiskowych.

Odpowiedź "uzyskanie informacji o środowisku pracy serwera obsługującego PHP" jest poprawna, bo dokładnie opisuje główny cel tej funkcji: diagnostykę konfiguracji i możliwości środowiska, w którym uruchamiany jest PHP.

Pozostałe odpowiedzi są niepoprawne z następujących powodów:

  • "zainicjowanie kodu w języku PHP" – kod PHP jest wykonywany przez sam mechanizm uruchomienia skryptu (żądanie HTTP/CLI), a nie przez wywołanie phpinfo(). phpinfo() jedynie generuje stronę/wyjście z informacjami.
  • "sprawdzenie wartości zmiennych użytych w kodzie PHP" – do podglądu wartości konkretnych zmiennych aplikacji używa się np. wypisywania (var_dump/print_r), logowania albo debuggera. phpinfo() nie pokazuje stanu zmiennych z Twojej logiki biznesowej.
  • "debugowanie kodu PHP" – debugowanie to proces znajdowania błędów w logice programu (kroki wykonania, breakpointy, śledzenie stosu, logi). phpinfo() może pomóc pośrednio (np. potwierdzić konfigurację), ale nie jest narzędziem debuggera.

Wskazówka egzaminacyjna: rozróżniaj pytania o diagnostykę środowiska (konfiguracja serwera i PHP) od pytań o debugowanie aplikacji (analiza działania kodu). Dodatkowo pamiętaj o praktyce bezpieczeństwa: publikowanie wyniku phpinfo() w Internecie może ujawniać wrażliwe szczegóły konfiguracji, więc zwykle ogranicza się dostęp do takiej strony.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
phpinfo() to funkcja diagnostyczna, która generuje czytelny raport o konfiguracji PHP na danym serwerze (np. wersja, rozszerzenia, ustawienia). Używa się jej głównie do sprawdzania środowiska uruchomieniowego, a nie do analizy logiki działania konkretnego skryptu.
Najczęściej zobaczysz m.in.: wersję PHP, listę załadowanych rozszerzeń, wartości wielu dyrektyw konfiguracyjnych, informacje o kompilacji oraz wybrane parametry środowiskowe. To pomaga szybko ocenić, czy serwer ma wymagane moduły i ustawienia pod aplikację.
phpinfo() opisuje środowisko (konfigurację PHP), a debugowanie dotyczy przebiegu wykonania kodu (np. breakpointy, stos wywołań, wartości zmiennych w konkretnym miejscu programu). Do debugowania używa się logów, var_dump/print_r albo narzędzi typu debugger, a nie raportu konfiguracyjnego.
Nie w sensie "zmiennych z logiki aplikacji". phpinfo() nie zna Twoich zmiennych lokalnych i obiektów w kodzie. Do sprawdzania wartości zmiennych użyj wypisywania (np. var_dump), zapisu do logów lub debuggera, bo one pokazują dane w konkretnym miejscu wykonania programu.
Najbardziej przydaje się podczas konfiguracji i wdrożeń: gdy chcesz sprawdzić wersję PHP, czy wymagane rozszerzenia są aktywne oraz jakie są ustawienia limitów i ścieżek. Ułatwia też porównanie środowiska lokalnego z testowym/produkcyjnym, gdy aplikacja zachowuje się inaczej.
Można uruchomić ją w prostym skrypcie PHP wywoływanym przez serwer WWW albo w kontekście CLI (zależnie od sposobu uruchomienia PHP). W praktyce często tworzy się tymczasową stronę diagnostyczną na serwerze, a potem usuwa lub ogranicza do niej dostęp.
Raport może ujawniać szczegóły konfiguracji (np. wersje, moduły, ścieżki, ustawienia), co ułatwia atakującemu rozpoznanie środowiska i dobór technik ataku. Dlatego na produkcji stronę z phpinfo() zwykle się usuwa lub chroni (np. hasłem/VPN/ACL).
Zależy od celu: do sprawdzenia rozszerzeń można użyć funkcji typu sprawdzanie dostępności modułu, do analizy błędów – logów i konfiguracji raportowania błędów, a do śledzenia wykonania – debuggera. phpinfo() daje szeroki obraz konfiguracji, ale nie zastępuje narzędzi programistycznych.
Częsty błąd to mylenie "informacji" z "debugowaniem" i wybór odpowiedzi o debugowaniu kodu. Inny błąd to założenie, że phpinfo() pokaże wartości zmiennych z aplikacji. Warto pamiętać: phpinfo() dotyczy konfiguracji środowiska PHP, nie stanu programu.
Ucz się grupami: diagnostyka (np. raporty o konfiguracji), wyjście/logowanie (wypisywanie i logi), oraz debugowanie (narzędzia i proces). Przy pytaniach zawsze ustal, czy dotyczy to środowiska serwera, czy działania konkretnego skryptu.
info

Statystycznie 71% uczniów zna prawidłową odpowiedź. średnio łatwe

W praktyce zawodowej kluczowe jest to, że funkcja phpinfo() wyświetla szczegółowe informacje o konfiguracji PHP na serwerze: wersję PHP, włączone moduły i ustawienia dyrektyw.

Źródła:

  • PHP Manual: phpinfo — Outputs information about PHP's configuration, https://www.php.net/manual/en/function.phpinfo.php (dostęp: 2026-03-02)
  • PHP Manual: Function reference / Appendix (informacje o funkcjach diagnostycznych i uruchomieniu), https://www.php.net/manual/en/funcref.php (dostęp: 2026-03-02)
  • OWASP Web Security Testing Guide (WSTG): Information Leakage (kontekst ujawniania informacji o konfiguracji), https://owasp.org/www-project-web-security-testing-guide/ (dostęp: 2026-03-02)

Materiały:

  • Dokumentacja PHP (opis funkcji phpinfo)
  • Materiały o debugowaniu w PHP (logi, var_dump/print_r, Xdebug)
  • Materiały o bezpieczeństwie aplikacji WWW (ujawnianie informacji o środowisku)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego