Je dois convertir un code fait par quelqu'un d'autre, de travailler dans mon modèle mvcest ce tableau JSON valide en utilisant php
Il utilise certaines fonctions comme EOD que je ne comprends pas. Est-ce que ça marche encore dans une classe?
Principalement, ma question se concentre sur la sortie de json.
L'ancien code ne pas utiliser la fonction php json_encode, mais il émet directement comme celui-ci
?>
{
"username": "<?php echo $_SESSION['username'];?>",
"items": [
<?php echo $items;?>
]
}
<?php
je le ferais comme ça, mais je dois être sûr que ce qui est bon pour la partie des articles
header('Content-type: application/json');
$output = array("username"=> isset($_SESSION['username']) ? $_SESSION['username'] : "?",
"items"=>$items
);
$this->content = json_encode($output);
Ceci est un peu de contexte sur la façon dont les $ articles sont faits. Un élément est stocké comme ceci:
$_SESSION['chatHistory'][$_POST['to']] .= <<<EOD
{
"s": "1",
"f": "{$to}",
"m": "{$messagesan}"
},
EOD;
et il est placé dans la variable $ items comme ce
$items = '';
if (!empty($_SESSION['openChatBoxes'])) {
foreach ($_SESSION['openChatBoxes'] as $chatbox => $void) {
$items .= $this->chatBoxSession($chatbox);
}
}
//The chatBoxSession() function takes an item from the $_SESSION['chatHistory'] array and returns it.
J'espère que cela était un peu assez clair? Le manuel PHP avertit que dans certains cas vous n'obtenez pas une sortie de tableau, à la place vous obtenez un objet. Donc, avec la syntaxe EOD, je ne suis pas vraiment sûr.
Cela pourrait me faire gagner du temps si je sais que certaines choses font ce qu'elles supposaient aussi, et donner le bon résultat.
merci, Richard
EOD est juste la syntaxe HEREDOC (ou NOWDOC) n'est ce pas? – alex
quelque chose comme ça, mais je ne suis pas vraiment dans ce J'ai encore besoin de lire cette page de manuel php – Rich