내 농업과 관련된 Android 앱 사용자가 작물의 이름을 PHP webservice로 보내고 해당 webservice가 해당 자르기에 대한 세부 정보를 반환해야합니다.PHP의 다단계 JSON 배열
다음은 데이터베이스의 샘플 구조입니다.
Crop_Master:Crop_Id , Crop_Name , Seed_Rate , Fertilizer
Pest: Crop_id , Pest_Name
이제 PDO의 fetchAll() 함수에 대해 알고 데이터가 단일 테이블에서 오는 경우이를 JSON 배열로 변환합니다.
이렇게 : 여기 데이터는 Crop_Master 테이블에서 제공되며 정상적으로 작동합니다.
$query1="select seed_rate,fertilizer_dosage from crop_master where crop_id='$crop_id'";
$res=$db->query($query1);
$output=$res->fetchAll(PDO::FETCH_ASSOC);
print(json_encode($output));
그러나 데이터가 여러 테이블에서 오는 경우 어떻게 하나의 "출력"배열을 만들 수 있는지 알 수 없습니다. 나는 여러 쿼리를 실행하고 하나의 출력 배열을 만들 수있는 방법 그리고
[
{
"seed_rate":"value_from_db"
"fertilizer":"value_from_db"
"pests":
[{"pest_name:"value_from_db"}
{"pest_name:"value_from_db"}
.
.
.
]
}
]
:
가정하자이 같은 JSON 배열을 만들려면?
첫 번째 결과 집합 인 $ output을 가져와 각 출력의 고유 ID를 반복하고 각 결과에 대해 새 쿼리를 실행해야합니다 예를 들어, $ 출력 [해충] –