로 돌아 SQL은.프로세스 내가 여기 처음 JSON API를 구축 가지고 노는거야 JSON
function processResponse($response)
{
// if (!$key) echo '[';
for ($i=0;$i<count($response);$i++) {
echo ($i>0?',':'').json_encode($response);
}
// if (!$key) echo ']';
}
공지 사항 나는 오프닝 댓글을 달았 나는 여러 (불필요한) 중첩 된 배열을 몰래되면서 [ ]
브래킷을 폐쇄 한 : 내 SQL 쿼리에서 JSON을 반환하는 다음과 같은 기능을 가지고있다. 이것은 다음과 같은 것을 허용합니다 : $json[0]->email;
그렇지 않으면 중첩 배열이되고 비슷한 것을 할 필요가 있습니다 $json[0][0]->email;
json_decode()
을 처리 할 때 null이됩니다. []
을 추가하면이 문제가 해결됩니다.
[{"inventory_id":7,"start":null,"expiration":null,"created":"2016-12-05 10:58:23","updated":"2016-12-08 15:29:56","item_name":"Tour Ticket (Per Person)","default_rate":null,"quantity":5,"bookings_count":"6","itinerary_count":"8","group_name":"Winery","location_name":"Location 1","status":"Active","type_name":"Tour","username":"[email protected]","user_id":4},{"inventory_id":20,"start":null,"expiration":null,"created":"2016-12-06 12:33:18","updated":"2016-12-08 15:41:12","item_name":"Tasting Ticket","default_rate":null,"quantity":10,"bookings_count":"0","itinerary_count":"0","group_name":"Winery","location_name":"Location 1","status":"Archived","type_name":"Ticket","username":"[email protected]","user_id":4}]
왜이 작업을 수행합니다 :
[[{"inventory_id":7,"start":null,"expiration":null,"created":"2016-12-05 10:58:23","updated":"2016-12-08 15:29:56","item_name":"Tour Ticket (Per Person)","default_rate":null,"quantity":5,"bookings_count":"6","itinerary_count":"8","group_name":"Winery","location_name":"Location 1","status":"Active","type_name":"Tour","username":"[email protected]","user_id":4},{"inventory_id":20,"start":null,"expiration":null,"created":"2016-12-06 12:33:18","updated":"2016-12-08 15:41:12","item_name":"Tasting Ticket","default_rate":null,"quantity":10,"bookings_count":"0","itinerary_count":"0","group_name":"Winery","location_name":"Location 1","status":"Archived","type_name":"Ticket","username":"[email protected]","user_id":4}]]
이 날은 JSON 출력을 구성 할 수있는 더 좋은 방법이
그래서 나는 이것에 대한 json_decode()
반환 null
을하지 왜 내 질문은 추측 ?
요소에') ('로 json_encode를 사용하여 수동으로 둘을 붙이지 마십시오 읽도록 권 해드립니다; PHP 객체와'json_encode()'로 전체 응답을 만드십시오. – Chris
함수를 버리고 그냥'echo json_encode ($ response); '를 실행하십시오. – RiggsFolly
허, 간단합니다.이 API를 빌드 할 때 참조로 사용했습니다 : https://www.leaseweb.com/labs/2015/ 10/creating-a-simple-rest-api-in-php/내가 왜 이런 방식으로 JSON을 구성하는지 궁금하다. – Nugs