Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe PHP

Słowa kluczowe: Debugowanie phpinfo() w PHP

Funkcja phpinfo() pozwala na

A. zainicjowanie kodu w języku PHP
Źle. Kod PHP zaczyna się znacznikiem <?php, a nie wywołaniem funkcji.
B. uzyskanie informacji o środowisku pracy serwera obsługującego PHP
Dobrze. Funkcja pokazuje wersję PHP, ustawienia php.ini, rozszerzenia i zmienne serwera.
C. debugowanie kodu PHP
Źle. Do debugowania służą narzędzia takie jak Xdebug i komunikaty błędów, a nie raport konfiguracji.
D. sprawdzenie wartości zmiennych użytych w kodzie PHP
Źle. Wartości zmiennych skryptu pokazują var_dump() i print_r().

Pytanie z egzaminu CKE, styczeń 2016 (arkusz E.14-X-16.01).

phpinfo() wyświetla stronę z informacjami o środowisku, w którym działa PHP: wersję interpretera, system operacyjny serwera, ustawienia z pliku php.ini, listę włączonych rozszerzeń (na przykład mysqli, gd) oraz zmienne serwera i środowiska. Wystarczy plik z jedną linią <?php phpinfo(); ?> otwarty przez serwer WWW.

Funkcja przydaje się przy konfiguracji, na przykład do sprawdzenia, czy rozszerzenie do bazy danych jest włączone albo który plik php.ini serwer faktycznie wczytuje. Takiego pliku nie zostawia się na serwerze produkcyjnym, bo zdradza atakującemu szczegóły konfiguracji.

Wynik jest długą stroną HTML z tabelami, więc przegląda się go w przeglądarce, wyszukując potrzebne ustawienie, na przykład upload_max_filesize.

Problem z tym pytaniem polega na tym, że wszystkie odpowiedzi dotyczą pracy z PHP. Sprawdzanie wartości zmiennych użytych w kodzie robią var_dump() i print_r(). phpinfo() nie pokazuje zmiennych skryptu, tylko konfigurację serwera i zmienne środowiskowe.

Debugowanie to praca krok po kroku z narzędziem takim jak Xdebug albo czytanie komunikatów błędów włączonych dyrektywą display_errors. Informacja z phpinfo() może pomóc w diagnozie konfiguracji, ale sama nie debuguje kodu.

Zainicjowanie kodu PHP następuje przez znacznik otwierający <?php, a nie przez wywołanie funkcji, bo żeby wywołać jakąkolwiek funkcję, kod PHP musi już działać. Właściwy opis to uzyskanie informacji o środowisku pracy serwera obsługującego PHP.

Warto zapamiętać różnicę: funkcje do diagnozy kodu pokazują dane skryptu, a phpinfo() dane środowiska, w którym ten skrypt działa. Pokrewna funkcja phpversion() zwraca samą wersję interpretera.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.