Συνάρτηση json_decode

Η συνάρτηση json_decode μετατρέπει μια συμβολοσειρά σε μορφή JSON σε μεταβλητές PHP. Ως πρώτη παράμετρο η συνάρτηση δέχεται μια συμβολοσειρά JSON, ως δεύτερη - μια σημαία μετατροπής (προαιρετική), και ως τρίτη - το βάθος αναδρομής (προαιρετικό). Από προεπιλογή η συνάρτηση επιστρέφει associative arrays.

Σύνταξη

phpjson_decode(string, [assoc = false], [depth = 512], [flags = 0]);

Παράδειγμα

Ας μετατρέψουμε μια απλή συμβολοσειρά JSON σε αντικείμενο PHP:

php<?php
  $json = '{"a":1,"b":2,"c":3}';
  $res = json_decode($json);
  print_r($res);
?>

Αποτέλεσμα εκτέλεσης κώδικα:

phpstdClass Object
(
  [a] => 1
  [b] => 2
  [c] => 3
)

Παράδειγμα

Ας μετατρέψουμε μια συμβολοσειρά JSON σε associative array:

php<?php
  $json = '{"a":1,"b":2,"c":3}';
  $res = json_decode($json, true);
  print_r($res);
?>

Αποτέλεσμα εκτέλεσης κώδικα:

php[
  'a' => 1,
  'b' => 2,
  'c' => 3,
]

Παράδειγμα

Επεξεργασία μη έγκυρου JSON:

php<?php
  $json = '{"a":1,"b":2,"c":3';
  $res = json_decode($json);
  var_dump($res);
?>

Αποτέλεσμα εκτέλεσης κώδικα:

phpNULL

Δείτε επίσης

  • τη συνάρτηση json_encode,
    που μετατρέπει δεδομένα PHP σε JSON
  • τη συνάρτηση serialize,
    που μετατρέπει δεδομένα PHP σε συμβολοσειρά