Hello !

J'ai un ptit problème, j'ai un tableau php à encoder en json :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
$array = array(
    'column' => array(
        'stacking' => 'normal',
        'dataLabels' => array(
            'enabled' => true,
            'formatter' => "function() {       if(this.y != 0) {                  return this.y;            }        }",
            'color' => "red",
            'style' => array(
                'textShadow' => '0 0 3px black, 0 0 3px black'
            )
        ),
    )
);
Comme vous pouvez le voir, j'ai une fonction js qui se trouve dans ce tableau (à l'index colum->dataLabels->formatter).

Or quand on utilise la fonction json_encode de but, on obtient ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
"formatter":"function() {            if(this.y != 0) {                  return this.y;            }        }",
C'est une chaîne de caractère (et c'est tout à fait logique), mais moi ce que je voudrais, c'est qu'il n'y est pas les guillemets pour que "formatter" soit bien une fonction.

Bon. Très bien. Le truc c'est que c'est pas possible, et les quelques solutions proposées ne me conviennent pas. J'ai bien quelques idées sous le coude, mais toutes me paraissent plus grade les unes que les autres.

D'où ma question : comment feriez-vous ?

Merci d'avance !