J'essaie de créer un formulaire PHP qui génère du code JSON personnalisé.Rechercher/remplacer après que le code PHP a été appliqué
Jetez un oeil: http://s194239704.onlinehome.us/bcembed/
La sortie de code JSON que l'application crée est erroné. Je dois faire une recherche et remplacer pour enlever quelques-unes des virgules.
Le code source (partielle) ressemble à ceci:
{
<!-- ALBUM ART --><span <?php if($artdisplay!="block") echo "style=\"display:none;\""; ?>>"art": { "x": <?php echo $artx; ?>, "y": <?php echo $arty; ?>, "w": <?php if($artsize=="small") {echo "100";} elseif($artsize=="large") {echo "150";} ?>, "h": <?php if($artsize=="small") {echo "100";} elseif($artsize=="large") {echo "150";} ?>, "show": true },</span>
<!-- MAINTEXT --><span <?php if($maintextdisplay!="block") echo "style=\"display:none;\""; ?>>"maintext": { "x": <?php echo $maintextx; ?>, "y": <?php echo $maintexty; ?>, "w": <?php echo $maintextw; ?>, "h": <?php echo $maintexth; ?>, "show": true, "styles": { "fontSize": "<?php echo $maintextfontsize; ?>", "textAlign": "<?php echo $maintextalign; ?>", <?php if($maintextbold=="bold") echo "\"fontWeight\": \"" . $maintextbold . "\","; ?> <?php if($maintextitalic=="italic") echo "\"fontStyle\": \"" . $maintextitalic . "\","; ?> }},</span>
}
Je veux lancer la recherche/remplacer après le PHP est appliqué. J'ai essayé d'emballer le tout dans une recherche/un remplacement JavaScript, parce que je pensais que le PHP serait exécuté avant le code Javascript. Mais rien ne s'est passé.
Pouvez-vous dire que je suis dans la tête? copie foireux et coller ne peuvent me faire jusqu'à présent ...
Edit: Je ne sais pas json_encode. Cela semble fonctionner, mais j'ai rencontré un autre problème. Je veux avoir ce que la sortie:
"currenttime": {
"x": 0,
"y": 0,
"w": 30,
"h": 30,
"show": true,
"styles": {
"fontSize": "13",
"fontWeight": "bold",
"fontStyle": "null",
"textAlign": "center"
}
}
Et c'est le code que je suis en train d'utiliser:
$jsonData['currenttime'] = array(
'x' => $currenttimex,
'y' => $currenttimey,
'w' => $currenttimew,
'h' => $currenttimeh,
'show' => $currenttimedisplay=="block" ? true : false,
['styles'] = array(
'fontSize' => $currenttimefontsize,
'fontWeight' => $currenttimebold,
'fontStyle' => $currenttimeitalic,
'textAlign' => $currenttimealign
)
);
Il est comme je l'ai besoin d'un sous-ensemble pour les styles ... ce qui est la bonne façon de formater cela?
Y at-il une raison vous écrivez manuellement le json au lieu d'utiliser la fonction php 'json_encode'? – prodigitalson
Juste par curiosité, pourquoi ne pas stocker les données dans un tableau et simplement 'json_encode()' à la fin? –
Parce que je suis un noob. –