私はphpに熟練しておらず、mysqlデータベースを介してプロキシリクエストにのみ使用しています。私はこれについて高くて低く見えましたが、私が意図しているように私のjson配列をどのように入れ子にするのか分かりません。私のDBでMysqliからPHPへJSON
PHP
if ($result = mysqli_query($con, $sql))
{
$resultArray = array();
$tempArray = array();
while ($row = mysqli_fetch_assoc($result))
{
array_push($resultArray, $row);
}
echo json_encode($resultArray);
}
私はお互いに関連付けることができます「ブロック」のマッピングを持っています。 PA_250x500_block、PA_250x500_TBlock & PA_250x500_StraightBlock。すべてのブロックをルートまたはブランチに指定できます。代わりに、この出力の
JSON出力
[
{
"root_class_name":"PA_250x500_block",
"branch_class_name":"PA_250x500_Tblock"
},
{
"root_class_name":"PA_250x500_block",
"branch_class_name":"PA_250x500_StraightBlock"
},
{
"root_class_name":"PA_250x500_StraightBlock",
"branch_class_name":"PA_250x500_block"
},
{
"root_class_name":"PA_250x500_StraightBlock",
"branch_class_name":"PA_250x500_Tblock"
},
{
"root_class_name":"PA_250x500_Tblock",
"branch_class_name":"PA_250x500_StraightBlock"
},
{
"root_class_name":"PA_250x500_Tblock",
"branch_class_name":"PA_250x500_block"
}
]
は、私はそれが互換性のあるマッチの配列ではなく、すべての可能な組み合わせとして、よりきれいに入れ子に取得しようとしている:
[
{
"root_class_name":"PA_250x500_Tblock",
"branch_class_name":[
"PA_250x500_StraightBlock",
"PA_250x500_block"
]
},
{
"root_class_name":"PA_250x500_Straightblock",
"branch_class_name":[
"PA_250x500_block",
"PA_250x500_TBlock"
]
},
{
"root_class_name":"PA_250x500_block",
"branch_class_name":[
"PA_250x500_StraightBlock",
"PA_250x500_TBlock"
]
}
]
誰もが持っています1から1のオブジェクトではなく、1からNのリストとしてbranch_class_nameをネストした配列にする方法のアイデアはありますか?
おかげで、
SQLクエリはどのように見えますか? ( '$ sql')データベースの内容とスキーマはどうなっていますか? – Timo
MySQLはネストされたデータを返しません。データを自分自身でフォーマットする必要があります – Ibu