たとえば、バスカテゴリのような特定の文字列のデータの配列を追加しようとしています。異なるブランドがあり、バスにはさまざまな機器があります。特定の文字列の配列内のJson応答配列
期待して出力
[{
"category_id": "1",
"bus_name": "Volvo1",
"objective": "{'Baggage','seat','water'}"
}, {
"category_id": "2",
"bus_name": "BMW1",
"objective": "{'test tire','call Driver','pick up time'}"
}]
電流出力
{
"bus_name": ["Volvo1", "BMW1"],
"category_id": ["1", "2"],
"objective": ["test tire", "call Driver", "pick up time"]
}
Anant出力:
{
"bus_name": ["Volvo1", "BMW1"],
"category_id": ["1", "2"],
"0": {
"objective": "Baggage,seat,water"
},
"1": {
"objective": "test tire ,call Driver ,pick up time"
}
}
マイコード:
$response = array();
$query="select DISTINCT bus_name,category_id from testtable";
$num= $db->num_rows($query);
if($num)
{
$rows = $db->get_results($query);
$bus_name =array();
foreach($rows as $k=>$row1) {
$bus_name =$row1['bus_name'];
$response['bus_name'][$k]=$row1['bus_name'];
$response['category_id'][$k]=$row1['category_id'];
$query="select * from testtable where bus_name='$bus_name'";
$num= $db->num_rows($query);
if($num)
{
$rows = $db->get_results($query);
foreach($rows as $k=>$row1)
{
$response['objective'][$k] =$row1['objective'];
}
}
}
}
,,,これを試してみてください。また、必要な出力が有効なjsonでないことにも注意してください。もちろん、客観的に文字列にする必要がない限り。また、たとえば 'bus_name'で注文して現在のものを追跡する場合、ループ内で追加のクエリを実行する代わりに、1つのクエリしか必要としません。 – jeroen
返信 – Shaik
の最初のおかげで、私はhttp://jsonlint.com/でテストしました。リクエストされたアウトは、有効なjasonであり、最初はバス名とカテゴリIDを取得しています。 – Shaik