これはあなたの質問にお答えします。私は似たようなことに取り組んでいます。
// Sample JSON where student has diploma.
{
"High_School": "American High School",
"HS_Diploma": true,
"HS_Diploma_date": "30-JUN-1997"
}
// Sample JSON where student does not have diploma.
{
"High_School": "American High School",
"HS_Diploma": false,
"HS_Diploma_date": null
}
$diploma = false; // Set default to false.
$diploma_date = null; // Set default data to null.
// Get Radio button 'diploma' which is set to 1 for yes.
if ($form->get("diploma")->getData() == 1){
$diploma = true; // Set boolean to true for yes.
}
if($diploma){ // If above boolean is true, student has HS diploma
$diploma_date = $form->get("diploma_date")->getData(); // So get the date.
}
// Creates a PHP array.
$high_school_array = array(
"High_School" => $form->get("high_school")->getData(),
"HS_Diploma" => $diploma,
"HS_Diploma_date" => $diploma_date->format('d-M-Y')
);
// Encode to JSON and set in Entity (here called $app), where setHSInfo() is the $app Entity
// function that takes in a string (JSON encoded).
$app->setHSInfo(json_encode($high_school_array));
// Store to database.
$em->persist($app);
$em->flush();
次にコントローラに、データベースから取得するには、JSONをデコードして、どこすることができますあなたの小枝ファイルを に渡す必要があります簡単に使用してください:
// Where getAppHSInfo function returns the $high_school_array encoded array above from the db.
return $this->render('viewHSDetails.html.twig', array(
'hs_json' => json_decode($app->getAppHSInfo(), true),
));
そして、小枝ファイルで、あなたは簡単にそれを使用することができます:
は
Education Information:<br/>
High School attended: {{ hs_json['High_School'] }}<br/>
{% if hs_json['HS_Diploma'] %}
Diploma Yes - Date: {{ hs_json['HS_Diploma_date'] }}
{% else %}
Diploma No
{% endif %}
あなたはJSONの配列をコード化するために、 'json_encode()を'使用することができます(私は以来、PHPを仮定しているそのあなたが使ったタグ)。 http://php.net/manual/en/function.json-encode.php – Kisaragi
これは、小枝を使用して配列を作成する方法です。私も同様に助けが必要です。 – UnknownPerson
さて、私はおそらく私はそう思う。あなたは何の配列をしたいですか?あなたはデータをループしていますか?テキストを解析しますか?これはあまりにも曖昧です。 – Kisaragi