Ce face strpos
strpos returnează poziția (începând de la 0) la care apare prima dată textul căutat. Dacă nu îl găsește, returnează false.
Dacă vrei doar să afli dacă un text conține altul, în PHP 8 este mai simplu să folosești str_contains.
Parametri
| Parametru | Descriere |
|---|---|
$text |
Textul în care se caută. |
$cauta |
Textul căutat. |
$start |
Opțional. Poziția de la care începe căutarea. |
Ce returnează
Poziția găsită sau false.
Exemple
Exemplul 1: Poziția unui caracter
<?php
$email = "ana@exemplu.ro";
$pozitie = strpos($email, "@");
echo $pozitie . "\n";
echo substr($email, $pozitie + 1);
Rezultat
3
exemplu.ro
Exemplul 2: Verificarea corectă cu !==
Textul căutat poate fi chiar la poziția 0, iar 0 este considerat fals într-un if simplu.
<?php
$text = "PHP este distractiv";
if (strpos($text, "PHP") !== false) {
echo "Am găsit PHP";
}
Rezultat
Am găsit PHP
Greșeli frecvente
- Scrii
if (strpos($text, "PHP")). Dacă textul începe cu „PHP”, poziția este 0 și condiția este falsă. Compară mereu cu!== false.
Comenzi înrudite
str_contains: Verifică dacă un text conține alt text. Returnează true sau false.substr: Extrage o bucată dintr-un text, pornind de la o anumită poziție.str_replace: Înlocuiește toate aparițiile unui text cu alt text.