JSON contra serialize en PHP – Ventajas y convenientes
El otro día hablábamos de la serialización en PHP hablando de cómo cambiar la dirección de un sitio en WordPress. El cometido de esta función es muy parecido a JSON, es decir permitir intercambiar información manteniendo su estructura usando cadenas de texto. Si usas AJAX sabrás de lo que hablo.
Cuando trabajamos con PHP tenemos las dos opciones: serialize() y json_encode(). ¿Pero cuál es mejor? La respuesta no es una u otra, cada una de ellas tiene sus pros y sus contras, veamos:
- JSON convierte los caracteres UTF-8 a secuencias de escape unicode, serialize() no
- JSON no recuerda qué tipo de objeto está transportando (al restaurarse siempre son instancias de la clase estándar: stdClass).
- serialize() permite el uso de las funciones mágicas __sleep() y __wakeup(), JSON no
- JSON sólo almacena las propiedades públicas
- JSON es más portable