stripos în PHP

Găsește poziția primei apariții a unui text, fără să țină cont de litere mari și mici.

Sintaxă
stripos(string $haystack, string $needle, int $offset = 0): int|false

Ce face stripos

stripos funcționează ca strpos, dar „PHP”, „php” și „Php” sunt considerate la fel. Returnează poziția (de la 0) sau false dacă textul nu este găsit.

Transformarea în litere mici se face doar pentru literele fără diacritice. „Ș” și „ș” sunt considerate diferite; pentru ele folosește mb_stripos.

Parametri

Parametru Descriere
$haystack Textul în care se caută.
$needle Textul căutat.
$offset Opțional. Poziția de la care începe căutarea. Poate fi negativă (numărată de la final).

Ce returnează

Poziția găsită sau false.

Exemple

Exemplul 1: Căutare fără majuscule

<?php
$titlu = "Ghid complet: PHP pentru începători";

var_dump(strpos($titlu, "php"));
var_dump(stripos($titlu, "php"));

Rezultat

bool(false)
int(14)

Exemplul 2: Filtrarea unor cuvinte interzise

<?php
$mesaj = "Câștigă BANI rapid!";

if (stripos($mesaj, "bani") !== false) {
    echo "Mesajul pare spam.";
}

Rezultat

Mesajul pare spam.

Greșeli frecvente

  • Verifici cu if (stripos(...)). Dacă textul este găsit la poziția 0, condiția este falsă. Compară cu !== false.
  • Cauți cuvinte cu diacritice scrise cu majuscule diferite (ȘCOALĂ / școală). Folosește mb_stripos.

Comenzi înrudite

  • strpos: Găsește poziția primei apariții a unui text în alt text.
  • str_contains: Verifică dacă un text conține alt text. Returnează true sau false.
  • mb_strpos / mb_stripos: Găsește poziția unui text în alt text, numărată în caractere, nu în octeți.
  • str_ireplace: Înlocuiește toate aparițiile unui text cu alt text, fără să țină cont de litere mari și mici.