これまでのところ、私はこの配列を達成しました
[1] => Array
(
[name] => Test
[stations] => Array
(
[0] => Array
(
[name] => Name
[price] => 50.00
[description] => Description
)
[1] => Array
(
[name] => Name Test
[price] => 135.00
[description] => Test
)
)
)
[2]=> Array
(
[name] => Test Name
[stations] => Array
(
[0] => Array
(
[name] => Name
[price] => 50.00
[description] => Description
)
)
これを行うには、入れ子になった foreach ループで 2 つの SQL クエリを使用します。ID は POST 値です:system_
$systems = "SELECT * FROM `systems` AS sys WHERE `sys`.`p_id`=:id";
$systemNumber = 0;
$stationNumber = 0;
foreach ($systems as $system) {
$return[$systemNumber] = array(
'name' => $system['system_name']
);
$stations = "SELECT * FROM `stations` WHERE `system_id`=$system[system_id] AND `p_id` = :id";
foreach($stations as $station){
$stationsArray[$stationNumber] = array(
'name'=>$station['station_name'],
'price'=>$station['price'],
'description'=>$station['description'],
);
$return[$systemNumber]['stations'] = $stationsArray;
$stationNumber++;
}
$systemNumber++;
}
これに関する問題は、以前の配列の上にステーションを構築していることです。つまり、配列は次のようになります。
...
[stations]=> Array(
[0]=>...
[1]=>...
[2]=>...
[3]=>...
[4]=>...
)
ステーションが対応するシステムに接続されるようにするにはどうすればよいですか?