Nella mia piccola età con WordPress, ho visto WordPress stesso e i suoi plugin amichevoli utilizzano PHP serialize()per archiviare i dati in db in molti casi. Ma in una recente ricerca ho trovato un serio supporto da parte della community per gli json_encode()over serialize().
- Un test che dimostra
json_encode()è meglio diserialize()- StackOverflow - Ragioni per cui
json_encode()può essere utilizzato e perché no: StackOverflow
E ho testato personalmente un array associativo con entrambi, che mostra:
serialize()immagazzina 342 caratterijson_encode()memorizza 285 caratteri
Perché lo sto chiedendo?
Sono su un progetto mentre sto per memorizzare i metacampi ricorrenti in un post. Dove:
- I dati sarebbero sostanzialmente in inglese, ma a volte possono essere bengalesi
- I dati sarebbero array associativo, profondo 3 livelli (spero di aver compreso correttamente i livelli ):
array(
1 => array(
'key'=>'value',
'key2'=>'value'
),
2 => array(
'key'=>'value',
'key2'=>'value'
)
)
Ho controllato che il campo postmetadella tabella meta_valuesia un longtext, ciò significa una lunghezza di 4.294.967.295 caratteri (4 GB).
Quindi ho bisogno di una soluzione solida per conservare le cose.