2016-10-14 2 views
-2

저는 데이터베이스에 연결하는 방법을 이미 알고 있습니다.PHP를 사용하여이 JSON 데이터를 HTML 테이블로 가져 오는 방법은 무엇입니까?

id name equipmentType availibility attribute name attribute value 
: 여기

[equipment] => Array 
    (
     [0] => Array 
      (
       [id] => 401582887101 
       [name] => Driver Seat 
       [equipmentType] => OTHER 
       [availability] => STANDARD 
       [attributes] => Array 
        (
         [0] => Array 
          (
           [name] => Number Of Driver Seat Manual Adjustments 
           [value] => 6 
          ) 

         [1] => Array 
          (
           [name] => Height Adjustable Driver Seat 
           [value] => height adjustable 
          ) 

        ) 

      ) 

그리고 테이블의 모양을 원하는 것입니다 : 난 그냥 제대로 여기

샘플 JSON이다 내가이 데이터를 얻을 필요가 PHP 루프의 종류를 알 필요가

401582887101 운전석 6 401582887101 운전석 기타 표준 높이 조절 운전석 높이 조절 가능한 운전석 수동 조정의 기타 표준 번호

+4

당신의 "샘플 JSON은"JSON되지 않습니다 - 근처에도 없습니다. –

+0

정말 그렇게 중요합니까? 그렇게하면 데이터가 구조화 된 방식을 쉽게 볼 수 있습니다. – Gregg

+0

글쎄, 만약 당신이 * 특별히 JSON 데이터에 관한 문제를 묻는다면, 나는 그것이 중요하다고 생각한다. 그렇지 않으면 그것을 언급하지 않았을 것이다. 또한, 특히 코딩 분야에서는 항상 정확한 기호로 사용됩니다. 아니면 웨이터에게 "여기 밀크 셰이크인가요?"라는 발표와 함께 당신에게 가져온 샐러드를 믿을 만하게 먹겠습니까? 또한, 귀하의 질문에 : 그냥 루프에 맞는 것입니다,하지만 'foreach'는 가장 쉬운해야합니다 .. 당신은 지금까지 무엇을 시도 했습니까? –

답변

1

조금 추한 코드를 그것은`하지만 귀하의 경우에 작동합니다, 한 배열의 데이터 구조로 동일하게 유지 :

echo '<table border="1">'; 
echo '<thead><th>id</th><th>name</th><th>equipmentType</th><th>availibility</th><th>attribute name</th><th>attribute value</th></thead>'; 
foreach ($data['equipment'] as $equipment) { 
    $row = '<tr>'; 
    foreach($equipment as $key => $item) { 
     if(is_array($item)) { 
      foreach ($item as $attribute) { 
       $attributeStr = ''; 
       $attributeStr .= '<td>'.$attribute['name'].'</td>'; 
       $attributeStr .= '<td>'.$attribute['value'].'</td>'; 
       echo $row.$attributeStr.'</tr>'; 
      } 
     } 
     else { 
      $row .= '<td>'.$item.'</td>'; 
     } 
    } 
} 
echo '</table>'; 
+0

고마워요,이게 내가 찾고 있던거야! – Gregg

관련 문제