배열에서 이름순, 나이순으로 나란히 출력하기
본문
<table style="width: 100%; text-align: center; vertical-align: middle;">
<tr>
<td style="width: 50%; vertical-align: middle; border: 1px solid black;"> 이름순 </td>
<td style="width: 50%; vertical-align: middle; border: 1px solid black;"> 나이순 </td>
<br>
</tr>
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
ksort($age);
//arsort($age);
foreach($age as $x => $x_value) {
echo '<tr>';
echo '<td style="width: 50%; vertical-align: middle; border: 1px solid black;">';
echo "Key=" . $x . ", Value=" . $x_value;
echo "<br>";
echo "</td>";
echo '<td style="width: 50%; vertical-align: middle; border: 1px solid black;">';
echo "<br>";
echo "</td>";
echo '</tr>';
}
?>
</table>
위 코드를 실행하면 아래처럼 나옵니다.
이름순 | 나이순 |
Key=Ben, Value=37 | |
Key=Joe, Value=43 | |
Key=Peter, Value=35 |
제가 원하는것은 아래처럼 나오는 것입니다.
이름순 | 나이순 |
Key=Ben, Value=37 | Key=Joe, Value=43 |
Key=Joe, Value=43 | Key=Ben, Value=37 |
Key=Peter, Value=35 | Key=Peter, Value=35 |
머릴 굴려봤지만 나란히 보여줄 방법을 못찾겠습니다.
!-->
답변 3
이렇게 해보시면 될거에요
<table style="width: 100%; text-align: center; vertical-align: middle;">
<thead>
<tr>
<td style="vertical-align: middle; border: 1px solid black;"> 이름순 </td>
<td style="vertical-align: middle; border: 1px solid black;"> 나이순 </td>
</tr>
</thead>
<tbody>
<tr>
<td>
<table width="100%">
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
ksort($age);
foreach($age as $x => $x_value) {
echo '<tr>';
echo '<td style="vertical-align: middle; border: 1px solid black;">';
echo $x . ",".$x_value;
echo "</td>";
echo '</tr>';
}
?>
</table>
</td>
<td>
<table width="100%">
<?php
arsort($age);
foreach($age as $x => $x_value) {
echo '<tr>';
echo '<td style="vertical-align: middle; border: 1px solid black;">';
echo $x . ",".$x_value;
echo "</td>";
echo '</tr>';
}
?>
</table>
</td>
</tr>
</tbody>
</table>
최소 수정 코드입니다.
<table style="width: 100%; text-align: center; vertical-align: middle;">
<tr>
<td style="width: 50%; vertical-align: middle; border: 1px solid black;"> 이름순 </td>
<td style="width: 50%; vertical-align: middle; border: 1px solid black;"> 나이순 </td>
<br>
</tr>
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
ksort($age);
$data = $age;
arsort($data);
$keys = array_keys($data);
$i = 0;
foreach($age as $x => $x_value) {
echo '<tr>';
echo '<td style="width: 50%; vertical-align: middle; border: 1px solid black;">';
echo "Key=" . $x . ", Value=" . $x_value;
echo "<br>";
echo "</td>";
echo '<td style="width: 50%; vertical-align: middle; border: 1px solid black;">';
echo "Key=" . $keys[$i] . ", Value=" . $data[$keys[$i]];
echo "<br>";
echo "</td>";
echo '</tr>';
$i++;
}
?>
</table>
답변을 작성하시기 전에 로그인 해주세요.