Strona główna › Pytania INF.03 › Pytanie 2246
INF.03 · pytanie #2246
W języku PHP przypisano zmiennej $a wartość 1. Porównanie $a === $b zwraca true, gdy zmienna $b ma przypisaną wartość
- A*1
- B1 lub '1'
- C'1' lub "1"
- D'1'
Poprawna odpowiedź: C. '1' lub "1"
Kliknij odpowiedź, którą uważasz za poprawną.
Wyjaśnienie
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.
🤖 Wyjaśnienie generowane przez AI – weryfikuj w oficjalnych źródłach.