Indeksowanie znaków w stringu PHP
Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
W PHP można odwołać się do pojedynczego znaku napisu za pomocą indeksu w nawiasach kwadratowych.
Przykład
$n = '[email protected]';
echo $n[0];
echo $n[1];
Wynik:
ad
Indeksowanie zaczyna się od 0, więc:
$n[0]toa,$n[1]tod,$n[2]tor,$n[3]toe,$n[4]tos,$n[5]to@.
Wykorzystanie przy analizie tekstu
Dzięki indeksowaniu można przechodzić po napisie znak po znaku:
$i = 0;
while ($n[$i] != '@') {
echo $n[$i];
$i++;
}
Ten kod wypisuje kolejne znaki aż do momentu napotkania @. Sam znak @ nie zostanie wypisany, ponieważ warunek pętli sprawdzany jest przed wykonaniem echo.
Zabezpieczenie przed błędem
Bezpieczniej jest sprawdzać także długość tekstu:
while ($i < strlen($n) && $n[$i] != '@') {
echo $n[$i];
$i++;
}
Dzięki temu program nie próbuje odczytać znaku spoza zakresu napisu, gdy znak @ nie występuje.