Extraer bloques JSON de una cadena de texto

He estado montando un plugin para el CKEDITOR que permita insertar bloques dinámicos de contenido dentro del HTML que editamos con el CKEDITOR. Para ello introduce bloques de JSON dentro del HTML que luego parseo desde PHP a la hora de mostrar el contenido. Para poder localizar esos bloques de JSON nada mejor que una expresión regular:

$pattern = '/\{(?:[^{}]|(?R))*\}/x';
preg_match_all($pattern, $cadenaHTML, $jsons);

Así cargamos los JSON dentro de la variable $jsons pero están en formato cadena por lo que toca convertirlos para poder leerlos más cómodamente:

$json = str_replace('"', '"', $jsons[0][0]);
var_dump(json_decode($json));
Dejar un comentario?

0 Comentarios.

Deje un comentario


NOTA - Puede usar estosHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.