Ce face mb_strtoupper / mb_strtolower
strtoupper și strtolower transformă doar literele englezești. Variantele mb_ cunosc regulile Unicode, deci transformă corect ă în Ă, ș în Ș și așa mai departe.
Pentru texte în română, folosește mereu variantele mb_: la titluri, la compararea fără majuscule și la normalizarea datelor introduse de utilizatori.
Parametri
| Parametru | Descriere |
|---|---|
$string |
Textul transformat. |
$encoding |
Opțional. Codarea textului. |
Ce returnează
Textul nou, cu literele transformate.
Exemple
Exemplul 1: Diferența față de strtoupper
<?php
$text = "școală în țară";
echo strtoupper($text) . "\n";
echo mb_strtoupper($text) . "\n";
echo mb_strtolower("ȘTEFAN CEL MARE");
Rezultat
șCOALă îN țARă
ȘCOALĂ ÎN ȚARĂ
ștefan cel mare
Exemplul 2: Căutare fără majuscule, cu diacritice
<?php
$cautare = "BRAȘOV";
$orase = ["Iași", "Brașov", "Cluj"];
foreach ($orase as $oras) {
if (mb_strtolower($oras) === mb_strtolower($cautare)) {
echo "Găsit: $oras";
}
}
Rezultat
Găsit: Brașov
Greșeli frecvente
- Folosești
strtolowerpentru a compara nume românești și „ȘTEFAN” nu este egal cu „ștefan”. Foloseștemb_strtolower.
Comenzi înrudite
strtolower / strtoupper: Transformă toate literele unui text în litere mici (strtolower) sau mari (strtoupper).mb_convert_case: Schimbă literele unui text în majuscule, litere mici sau „Prima Literă Mare” la fiecare cuvânt, cu diacritice.ucfirst / ucwords: Face prima literă a textului majusculă (ucfirst) sau prima literă a fiecărui cuvânt (ucwords).