The JsonSerializable::jsonSerialize() function is an inbuilt function in PHP which is used to serialize the JSON object to a value that can be serialized natively by using json_encode() function.
Syntax:
mixed JsonSerializable::jsonSerialize( void )
Parameters: This function does not accept any parameters.
Return Value: This function returns the data which is serialized by json_encode() function.
Below programs illustrate the JsonSerializable::jsonSerialize() function in PHP:
Program 1:
<?php class vector implements JsonSerializable {     public function __construct( array $arr ) {         $this -> array = $arr ;     }       public function jsonSerialize() {         return $this -> array ;     } }   // Declare an array $arr = [1, 2, 3, 4, 5];   echo ( "JSON elements:\n" );   // Convert the array element into JSON echo json_encode( new vector( $arr ), JSON_PRETTY_PRINT);   ?> |
JSON elements: [ 1, 2, 3, 4, 5 ]
Program 2:
<?php class vector implements JsonSerializable {     public function __construct( array $arr ) {         $this -> array = $arr ;     }       public function jsonSerialize() {         return $this -> array ;     } }   // Declare an array $arr = [     "x" => "neveropen" ,     "y" => "for" ,     "z" => "neveropen" ];   echo ( "Convert the array element into JSON:\n" );   // Convert the array element into JSON echo json_encode( new vector( $arr ), JSON_PRETTY_PRINT);   ?> |
Convert the array element into JSON: { "x": "neveropen", "y": "for", "z": "neveropen" }
Reference: https://www.php.net/manual/en/jsonserializable.jsonserialize.php