Ce face strpbrk
strpbrk caută primul caracter din text care se află în lista $characters și returnează tot ce urmează, inclusiv acel caracter. Dacă nu găsește niciunul, returnează false.
Seamănă cu strstr, dar caută oricare dintre mai multe caractere, nu un subșir. Face diferența între litere mari și mici.
Parametri
| Parametru | Descriere |
|---|---|
$string |
Textul în care se caută. |
$characters |
Lista de caractere căutate. |
Ce returnează
Bucata de text de la primul caracter găsit sau false.
Exemple
Exemplul 1: Primul semn de punctuație
<?php
$text = "Salut Ana, ce faci? Bine!";
var_dump(strpbrk($text, ",.?!"));
var_dump(strpbrk("fără punctuație", ",.?!"));
Rezultat
string(16) ", ce faci? Bine!"
bool(false)
Exemplul 2: Separatorul dintr-o cale Windows sau Linux
<?php
foreach (["poze/vara.jpg", "poze\\iarna.jpg", "fisier.txt"] as $cale) {
$rest = strpbrk($cale, "/\\");
echo $cale . " => " . ($rest === false ? "fără director" : "director: " . substr($cale, 0, -strlen($rest))) . "\n";
}
Rezultat
poze/vara.jpg => director: poze
poze\iarna.jpg => director: poze
fisier.txt => fără director
Greșeli frecvente
- Verifici cu
if (strpbrk(...)). Dacă textul găsit este"0", condiția este falsă. Compară cu!== false.
Comenzi înrudite
strstr / stristr: Returnează partea dintr-un text care începe cu prima apariție a altui text (sau partea dinaintea ei).strspn / strcspn: strspn numără câte caractere de la început fac parte dintr-o listă; strcspn numără câte NU fac parte din ea.strpos: Găsește poziția primei apariții a unui text în alt text.