채택완료

php에서 두 배열을 객체로 묶는 방법이 있을까요?

배열1 = [1, 2, 3, 4, 5]

배열2 = [a, b, c, d, e]가 있을때 이 둘을 합쳐서

배열3 = [{id: 1, data=a}, {id: 2, data=b}, {id: 3, data=c}, {id: 4, data=d}, {id: 5, data=e}]로 만들어서

foreach로 각각 html로 <h2>id</h2><span>data</span>로 뿌리고싶습니다.

|

답변 2개 / 댓글 1개

채택된 답변
+20 포인트
Copy
그냥 

 

<?php for($i=0; $i<count(배열1); $i++){ ?>

    <h2><?php echo 배열1[$i]; ?><h2>

    <span><?php echo 배열2[$i]; ?></span>

<?php } ?>

 

이렇게 하면 되는거 아닌가요.. ?

굳이 꼭 배열3으로 한다고 하면... 

 

<?php for($i=0; $i<count(배열1); $i++){

    배열3[배열1[$i]] = 배열2[$i];

} ?>

답변에 대한 댓글 1개

아 굳이 합칠 필요가 없군요 잘 해결했습니다. 감사합니다.

2차원 배열을 사용하시면되지 않을까요?

아래 예를 안내드립니다. 한번 보시고 응용해보시면 될꺼 같습니다.

Copy
<?php
$planets = array
  (
  array("태양과 가장 가까운","수성","Mercury"),
  array("가장 밝은","금성","Venus"),
  array("우리가 사는","지구","Earth"),
  array("붉은 색의","화성","Mars")
  );
    
for ($row = 0; $row < 4; $row++) {
  echo "<p><b>번호 $row</b></p>";
  echo "<ul>";
  for ($col = 0; $col < 3; $col++) {
    echo "<li>".$planets[$row][$col]."</li>";
  }
  echo "</ul>";
}
?>

답변을 작성하려면 로그인이 필요합니다.