En mi corta edad con WordPress, he visto que WordPress mismo y sus complementos amigables están utilizando PHP serialize()para almacenar datos en db en muchos casos. Pero en una búsqueda reciente encontré un serio apoyo de la comunidad para json_encode()el serialize().
- Una prueba que prueba
json_encode()es mejor queserialize()- StackOverflow - Razones por las que
json_encode()se pueden usar y por qué no - StackOverflow
Y personalmente probé una matriz asociativa con ambos, que muestra:
serialize()almacena 342 caracteresjson_encode()almacena 285 caracteres
¿Por qué estoy preguntando esto?
Estoy en un proyecto mientras voy a almacenar metacampos repetidos en una publicación. Dónde:
- Los datos estarían básicamente en inglés, pero a veces pueden ser bengalíes
- Los datos serían una matriz asociativa, de 3 niveles de profundidad (espero haber entendido los niveles correctamente):
array(
1 => array(
'key'=>'value',
'key2'=>'value'
),
2 => array(
'key'=>'value',
'key2'=>'value'
)
)
He comprobado que el campo de la postmetatabla es meta_valueun longtext, eso significa una longitud de 4,294,967,295 caracteres (4GB).
Así que necesito una solución robusta para almacenar cosas.