1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| $struct = <<< EOF
Attribut1 = "toto";
Attribut2 = "titi";
ListeSousObjets ={
SousObjet ={
Attribut = "tata";
};
SousObjet ={
Attribut = "tutu";
};
};
ObjetInterne ={
Attribut = "xxxx";
};
EOF;
function parse_custom_structure ($struct) {
$a = array(';' => ',', '=' => ':', ' :' => ':');
$b = array('~(\w+):~' => '"$1":', '~,\s*\}~' => '}');
$struct = str_replace(array_keys($a), $a, $struct);
$struct = preg_replace(array_keys($b), $b, '{'.$struct.'}');
return json_decode($struct, true);
}
var_dump( parse_custom_structure($struct) ); |
Partager