Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. strstr() w PHP

strstr() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Co to jest strstr() w PHP?

strstr() to funkcja PHP służąca do sprawdzania, czy jeden ciąg znaków występuje jako część innego ciągu. Funkcja wyszukuje podany fragment tekstu i zwraca część napisu od miejsca znalezienia szukanego fragmentu do końca.

Składnia

strstr(string $haystack, string $needle): string|false
  • $haystack - tekst, w którym szukamy,
  • $needle - tekst, którego szukamy.

Jeśli fragment zostanie znaleziony, funkcja zwraca tekst od pierwszego wystąpienia szukanego ciągu. Jeśli nie zostanie znaleziony, zwraca false.

Przykład

$tekst = "Egzamin INF.03 z PHP";

if (strstr($tekst, "PHP")) {
    echo "Znaleziono ciąg PHP";
} else {
    echo "Nie znaleziono ciągu PHP";
}

W tym przykładzie funkcja wykryje, że napis PHP jest częścią większego tekstu.

Ważne na egzaminie

strstr() sprawdza występowanie fragmentu tekstu w innym tekście. W pytaniach egzaminacyjnych często pojawia się obok podobnie wyglądających funkcji:

  • trim() - usuwa białe znaki z początku i końca tekstu,
  • strtok() - dzieli tekst na tokeny według separatora,
  • strlen() - zwraca długość tekstu,
  • strstr() - wyszukuje fragment tekstu w innym tekście.

Uwaga praktyczna

Do samego sprawdzania, czy fragment istnieje, często używa się też strpos(), ponieważ zwraca pozycję znalezionego tekstu. Trzeba jednak pamiętać, że pozycja 0 oznacza znalezienie tekstu na początku, dlatego należy porównywać wynik z false operatorem !==.

if (strpos($tekst, "PHP") !== false) {
    echo "Znaleziono";
}