Ce face json_encode
JSON este formatul folosit de aproape toate API-urile și de JavaScript. json_encode transformă datele PHP în JSON, ca să le trimiți către browser sau către alt server.
Opțiuni utile: JSON_PRETTY_PRINT (aranjat pe linii), JSON_UNESCAPED_UNICODE (diacriticele rămân lizibile), JSON_UNESCAPED_SLASHES (nu pune \ înainte de /).
Parametri
| Parametru | Descriere |
|---|---|
$valoare |
Datele de transformat. |
$optiuni |
Opțional. Combinație de constante JSON_*, unite cu |. |
Ce returnează
Textul JSON sau false la eroare.
Exemple
Exemplul 1: Tablou în JSON
<?php
$produs = ["nume" => "Husă telefon", "pret" => 39.9, "stoc" => true];
echo json_encode($produs);
Rezultat
{"nume":"Hus\u0103 telefon","pret":39.9,"stoc":true}
Exemplul 2: Diacritice și format lizibil
<?php
$oras = ["nume" => "Iași", "judet" => "Iași"];
echo json_encode($oras) . "\n";
echo json_encode($oras, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
Rezultat
{"nume":"Ia\u0219i","judet":"Ia\u0219i"}
{
"nume": "Iași",
"judet": "Iași"
}
Exemplul 3: Răspuns pentru un API
<?php
// Pe server, înainte de echo trimiți și: header("Content-Type: application/json");
echo json_encode(["succes" => true, "mesaj" => "Salvat"], JSON_UNESCAPED_UNICODE);
Rezultat
{"succes":true,"mesaj":"Salvat"}
Greșeli frecvente
- Diacriticele apar ca
\u0219. Nu este o eroare, dar adaugăJSON_UNESCAPED_UNICODEpentru un JSON lizibil.
Comenzi înrudite
json_decode: Transformă un text JSON în tablou sau obiect PHP.print_r: Afișează conținutul unui tablou sau obiect într-o formă ușor de citit.