Bird
Raised Fist0
PHPprogramming~5 mins

JSON encoding and decoding in PHP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does JSON encoding mean in PHP?
JSON encoding means converting PHP data like arrays or objects into a JSON string format that can be easily shared or stored.
Click to reveal answer
beginner
Which PHP function is used to convert a PHP array into a JSON string?
The function json_encode() converts a PHP array or object into a JSON string.
Click to reveal answer
beginner
What does JSON decoding mean in PHP?
JSON decoding means converting a JSON string back into a PHP variable like an array or object.
Click to reveal answer
beginner
Which PHP function is used to convert a JSON string into a PHP variable?
The function json_decode() converts a JSON string into a PHP array or object.
Click to reveal answer
intermediate
What does the second parameter of json_decode() control?
The second parameter controls if the JSON string is decoded into an associative array (true) or an object (false, default).
Click to reveal answer
Which function converts a PHP array to a JSON string?
Ajson_encode()
Bjson_decode()
Cjson_parse()
Djson_to_array()
What does json_decode() return by default?
AA PHP associative array
BA PHP object
CA JSON string
DAn error
How do you get an associative array from json_decode()?
ASet second parameter to true
BSet second parameter to false
CUse json_encode() instead
DUse json_parse()
What type of data can json_encode() convert?
AOnly strings
BOnly numbers
CArrays and objects
DOnly booleans
What happens if json_decode() receives invalid JSON?
AReturns the original string
BThrows an exception
CReturns false
DReturns null
Explain how to convert a PHP array to JSON and back to a PHP array.
Think about the functions and parameters needed for encoding and decoding.
You got /3 concepts.
    Describe the difference between decoding JSON to an object versus an associative array in PHP.
    Focus on the second parameter of json_decode().
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the PHP function json_encode() do?
      easy
      A. Converts PHP data into a JSON formatted string
      B. Converts JSON string into PHP data
      C. Validates JSON syntax
      D. Reads JSON data from a file

      Solution

      1. Step 1: Understand the purpose of json_encode()

        This function takes PHP variables like arrays or objects and converts them into a JSON string format.
      2. Step 2: Differentiate from json_decode()

        json_decode() does the opposite by converting JSON strings back to PHP data.
      3. Final Answer:

        Converts PHP data into a JSON formatted string -> Option A
      4. Quick Check:

        json_encode() = PHP to JSON string [OK]
      Hint: json_encode() makes PHP data into JSON text [OK]
      Common Mistakes:
      • Confusing json_encode() with json_decode()
      • Thinking json_encode() reads JSON from files
      • Assuming json_encode() validates JSON syntax
      2. Which of the following is the correct syntax to decode a JSON string into a PHP array?
      easy
      A. $data = json_encode($jsonString, true);
      B. $data = json_decode($jsonString, true);
      C. $data = json_decode($jsonString);
      D. $data = json_encode($jsonString);

      Solution

      1. Step 1: Identify the function to decode JSON

        The function to convert JSON string to PHP data is json_decode().
      2. Step 2: Use the second parameter to get an array

        Passing true as the second argument returns an associative array instead of an object.
      3. Final Answer:

        $data = json_decode($jsonString, true); -> Option B
      4. Quick Check:

        json_decode() with true returns array [OK]
      Hint: Use json_decode($json, true) for PHP arrays [OK]
      Common Mistakes:
      • Using json_encode() instead of json_decode()
      • Omitting the second parameter to get an array
      • Passing true to json_encode() which is invalid
      3. What will be the output of the following PHP code?
      $arr = ['name' => 'Anna', 'age' => 25];
      $json = json_encode($arr);
      echo $json;
      medium
      A. {"name":"Anna","age":25}
      B. Array
      C. name: Anna, age: 25
      D. Error: Cannot encode array

      Solution

      1. Step 1: Understand json_encode output

        The function converts the PHP associative array into a JSON string with keys and values in double quotes.
      2. Step 2: Check the exact JSON string format

        The output is a JSON object string: {"name":"Anna","age":25} with escaped quotes when printed.
      3. Final Answer:

        {"name":"Anna","age":25} -> Option A
      4. Quick Check:

        json_encode() outputs JSON string [OK]
      Hint: json_encode() outputs JSON string with quotes [OK]
      Common Mistakes:
      • Expecting PHP array print instead of JSON string
      • Missing quotes around keys and values
      • Confusing output with plain text or error
      4. Identify the error in this PHP code snippet:
      $json = '{"fruit":"apple","count":3}';
      $data = json_decode($json, true);
      echo $data->fruit;
      medium
      A. json_decode cannot parse this JSON
      B. Incorrect JSON string format
      C. Missing second parameter in json_decode
      D. Using object syntax on an array after json_decode

      Solution

      1. Step 1: Check json_decode parameters

        The second parameter true makes json_decode return an associative array.
      2. Step 2: Accessing array with object syntax

        Using $data->fruit tries to access an object property, but $data is an array, so this causes an error.
      3. Final Answer:

        Using object syntax on an array after json_decode -> Option D
      4. Quick Check:

        json_decode(true) returns array, use $data['fruit'] [OK]
      Hint: Use $data['key'] if json_decode(true) used [OK]
      Common Mistakes:
      • Accessing array as object after json_decode(true)
      • Assuming JSON string is invalid
      • Forgetting to pass true for array output
      5. You have a PHP array:
      $data = ["id" => 101, "tags" => ["php", "json", "coding"]];

      Which code correctly encodes this array to JSON and then decodes it back to a PHP object?
      hard
      A. $json = json_encode($data); $obj = json_decode($json, true);
      B. $json = json_decode($data); $obj = json_encode($json);
      C. $json = json_encode($data); $obj = json_decode($json);
      D. $json = json_encode($data, true); $obj = json_decode($json, true);

      Solution

      1. Step 1: Encode PHP array to JSON string

        Use json_encode($data) to convert the PHP array into a JSON string.
      2. Step 2: Decode JSON string back to PHP object

        Calling json_decode($json) without the second parameter returns a PHP object.
      3. Final Answer:

        $json = json_encode($data); $obj = json_decode($json); -> Option C
      4. Quick Check:

        Encode then decode without true returns object [OK]
      Hint: json_decode() without true returns object [OK]
      Common Mistakes:
      • Using json_decode before json_encode
      • Passing true to json_encode (invalid)
      • Decoding with true returns array, not object
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard