Ce face mb_parse_str
mb_parse_str funcționează ca parse_str: decodează textul de tip URL (%C8%99 devine „ș”) și pune perechile cheie=valoare în tabloul $result. Înțelege și cheile cu paranteze (tag[]=php).
În plus față de parse_str, poate converti codarea valorilor, dacă este activă conversia automată a datelor de intrare. Cu setările implicite, rezultatul este același.
Parametri
| Parametru | Descriere |
|---|---|
$string |
Textul de tip query string. |
$result |
Variabila în care se pune tabloul rezultat. |
Ce returnează
true la succes, false la eroare.
Exemple
Exemplul 1: Parametrii dintr-un URL
<?php
$url = "https://exemplu.ro/cauta?nume=Ana&oras=Ia%C8%99i&tag[]=php&tag[]=sql";
mb_parse_str(parse_url($url, PHP_URL_QUERY), $parametri);
print_r($parametri);
Rezultat
Array
(
[nume] => Ana
[oras] => Iași
[tag] => Array
(
[0] => php
[1] => sql
)
)
Greșeli frecvente
- Apelezi funcția fără al doilea parametru. Din PHP 8 este obligatoriu: rezultatul se pune doar în tabloul dat, nu în variabile globale.
Comenzi înrudite
parse_str: Transformă textul de interogare al unui URL (a=1&b=2) într-un tablou, cu valorile decodate.parse_url: Împarte un URL în componente: protocol, domeniu, port, cale, interogare și fragment.urlencode / urldecode: Codează un text ca să poată fi pus în siguranță într-un URL, ca valoare a unui parametru (după ?).