Dlaczego tak
Funkcja file wczytuje plik do tablicy, w której każdy element to jeden wiersz, a flaga FILE_IGNORE_NEW_LINES usuwa z nich znaki końca wiersza. Tablica ma 3 elementy, a indeksy zaczynają się od 0, więc $w[1] to drugi wiersz — Ola. Odpowiedź „3 Ala” zakłada numerowanie od jedynki, a 4 elementy wynikałyby z błędnego założenia, że ostatni znak nowego wiersza tworzy pusty wiersz.