json_encode, but populates $error in case of error

function json_encode_with_error(
  mixed $value,
  inout ?(int, string) $error,
  int $options = 0,
  int $depth = 512,
): mixed;

If the function runs normally with no errors, then $error is set to null. Otherwise, if an error occurs, $error is set to a tuple of (error code constant, description) from the list defined in builtins_json.hhi.


  • mixed $value
  • inout ?(int, string) $error
  • int $options = 0
  • int $depth = 512


  • mixed