json_validate
(PHP 8 >= 8.3.0)
json_validate — Verifica si una string contiene JSON válido
Descripción
Si json_validate() devuelve false, la causa
puede ser recuperada utilizando json_last_error() y
json_last_error_msg().
json_validate() utiliza menos memoria que
json_decode() si el contenido JSON decodificado no es
utilizado, ya que no necesita construir la estructura de array
o de objeto que contiene el contenido.
Precaución
Llamar a json_validate() inmediatamente antes
de json_decode() analizará innecesariamente la string
dos veces, ya que json_decode() realiza
implícitamente una validación durante la decodificación.
json_validate() no debe ser utilizado
a menos que la decodificación del contenido JSON no sea inmediatamente utilizada
y que sea necesario saber si la string contiene JSON válido.
Parámetros
json
-
La string a validar.
Esta función solo funciona con strings codificadas en UTF-8.
Nota:
PHP implementa un superconjunto de JSON tal como se especifica en el
» RFC 7159 original.
depth
-
El nivel máximo de profundidad de la estructura a decodificar.
El valor debe ser mayor que 0,
y menor o igual a 2147483647.
flags
-
Actualmente, solo
JSON_INVALID_UTF8_IGNORE
es aceptado.
Valores devueltos
Devuelve true si la string dada es sintácticamente JSON válido, de lo contrario
devuelve false.
Errores/Excepciones
Si depth está fuera del rango permitido,
se lanza una ValueError.
Si flags no es un flag válido,
se lanza una ValueError.
Ejemplos
Ejemplo #1 Ejemplos de json_validate()
<?php
var_dump(json_validate('{ "test": { "foo": "bar" } }'));
var_dump(json_validate('{ "": "": "" } }'));
?>
El ejemplo anterior mostrará: