컴퓨터/PHP

[PHP] 가변적인 변수를 HTML Table에 담기

ehong 2019. 11. 6. 20:38

 

홈페이지에서 입력된 쿼리에 대한 응답을 표에 담아 보여줘야 하는데 쿼리마다 응답의 개수가 달라 변수의 개수에 따라 크기가 변하는 표를 만들어야 했다. 또, 변수가 50으로 정해져 있다고 해도 코드에 행 50개를 다 쓸 수도 없는 노릇.

 

일단 변수를 담을 표의 html 코드:

<table id="custom_table">
	<tr>
      <th>번호</th>
      <th>항목</th>
	</tr>
	<tr>
      <td></td>
      <td></td>
	</tr>
</table>

 

css를 넣어놨기 때문에 브라우저로 띄우면 다음과 같다.

 

이제 td 태그(table data) 안에 데이터를 넣어야 한다.

 

데이터가 다음과 같다고 할 때,

$item = array("데스크톱", "노트북", "스캐너", "프린터", "스피커", "태블릿", "휴대폰");

 

php 코드를 작성하면 다음과 같다.

 

<?php
$item = array("데스크톱", "노트북", "스캐너", "프린터", "스피커", "태블릿", "휴대폰");
?>

<table id="custom_table">
  <tr>
    <th>번호</th>
    <th>항목</th>
  </tr>
  <tr>
    <?php $count = 0;
    foreach($item as $row) :
      $count += 1 ?>
    <td><?php echo $count; ?></td>
    <td><?php echo $row; ?></td>
  </tr>
  <?php endforeach; ?>
</table>

 

코드에서 볼 수 있듯이 html 태그 사이사이에 '<?php'로 시작하고 '?>'로 끝나는 php 코드를 넣어주면 된다.

foreach로 시작하는 반복문이 <td> 앞에서 '?>'로 한 번 닫혔다가 </tr> 뒤에 다시 '<?php'로  이어져도 코드가 온전히 작동된다.

 

결과는 아래와 같다.

 

이렇게 변수의 개수에 따라 행의 개수가 달라지는 표를 작성하였다.