web-dev-qa-db-fra.com

Stocker plusieurs champs de formulaire en tant que chaîne JSON

J'essaie de stocker plusieurs valeurs de champ dans une chaîne JSON dans mon composant, mais je ne sais pas trop comment s'y prendre. J'ai fait des recherches et il semble que l'utilisation des méthodes load et bindJTable soit la voie à suivre, mais je ne sais pas comment rendre les champs de mon forme et vice versa.

Des conseils ou des conseils seraient appréciés!

3
doovers

Vous pouvez le faire soit dans votre classe Table ou dans votre classe Model:

// Convert a JSON field to an array
$registry = new JRegistry;
$registry->loadString($item->jsonfield);
$item->jsonfield = $registry->toArray();

Voir la référence

Et vice versa:

// Convert an array field to a JSON
if (isset($data['jsonfield']) && is_array($data['jsonfield']))
{
    $registry = new JRegistry;
    $registry->loadArray($data['jsonfield']);
    $data['jsonfield'] = (string) $registry;
}

Voir la référence

3
Dmitry Rekun