Funkcja Strpos w PHP: definicja położenia podłańcucha

Funkcja strpos () w PHP jest jedną z najczęściej używanych w przetwarzaniu danych typu string. Pozwala określić pozycję, z której łańcuch źródłowy zawiera pożądany podprogram. W takim przypadku, aby uzyskać odpowiedni wynik, należy wziąć pod uwagę szereg subtelności.

Parametry wejściowe i wyjściowe

Ogólnie funkcja strpos () PHP wygląda następująco:

mieszane strpos (string $ string, mixed $ substring [, int $ offset = 0])

Dwa obowiązkowe argumenty są akceptowane jako dane wejściowe, a jedno opcjonalne:

  • Łańcuch wyjściowy - $ string, który będzie wyszukiwany.
  • Szukany jest podłańcuch - podłańcuch $. Ten parametr jest typu mieszanego. Oznacza to, że oprócz typu danych łańcuchowych, funkcja może akceptować dowolne inne. W takim przypadku argument zostanie przekonwertowany na liczbę całkowitą i przetworzony jako kod znaku.
  • Opcjonalny parametr odchylenia - $ offset. Domyślnie wyszukiwanie odbywa się od początku ciągu $ string, a przesunięcie to 0. Jeśli zdefiniujesz przesunięcie negatywne, zostanie ono odjęte od końca wiersza.

Funkcja PHP strpos () zwraca pozycję, z której $ substring jest zawarty w łańcuchu $. Jeśli występuje kilka takich zdarzeń, zwrócona zostanie tylko pozycja pierwszego.

Jeśli nie ma dopasowań, wynik będzie miał wartość logiczną false.

Cechy pracy

Podczas wyszukiwania podłańcuchu należy wziąć pod uwagę, że liczenie znaków rozpoczyna się od zera. W związku z tym 0 jest jedną z poprawnych wartości.

Przy nie ścisłym porównaniu 0 jest zredukowane do typu logicznego, przekształcone w fałsz może byćpostrzegany jako brak występowania. Dlatego bardzo ważne jest stosowanie ścisłego równania (===), które uwzględnia typ porównywalnych wartości.

Ponadto strpos () jest przykładem funkcji PHP, w której rozróżniana jest wielkość liter.

Przykłady zastosowania

Przykład 1. Prosty wpis. Musisz znaleźć pozycję, w której kluczowy podklucz jest zawarty w małpach łańcuchowych.



Przykład 2. Brak występowania. Jeśli zmienisz wyszukiwany ciąg na KEY, funkcja strpos () PHP nie znajdzie dopasowań, ponieważ jest to zmienna zależna od rejestru. Wynik będzie fałszywą wartością logiczną.

 

Przykład 3. Wprowadzenie zerowej pozycji. Ważne jest, aby stosować ścisłą równość, sprawdzając wynik działania, w przeciwnym razie można uzyskać nieprawidłowy wynik.

 

Pierwsze dwie kontrole będą określać brak wystąpień, pomimo tego, że podklasa życia jest zawarta w linii źródła życia.

Przykład 4. Przesunięcie pozycji początkowej za pomocą parametru $ offset.

 

Po ustawieniu przesunięcia równego 3, wyszukiwanie rozpoczyna się od symbolu "e".

Podobne funkcje

Istnieją inne funkcje inne niż strpos ():
  • stripos () - aby wykluczyć wielkość liter;
  • strrpos () - definiuje ostatnie wystąpienie;
  • strripos () - szuka ostatniego wpisu i nie bierze sprawy pod uwagę.
  • Powiązane publikacje