테스트 사이트 - 개발 중인 베타 버전입니다

여분필드를 반복문으로 가져와서 뿌려줄때, 콤마 제거하는 방법 채택완료

이아나 8년 전 조회 3,458

안녕하세요.

 

</p><p><?php</p><p>// 형식</p><p>for ($j=2; $j <= 4; $j++) {</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>if ($list[$i]['wr_'.$j]) {</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>echo $list[$i]['wr_'.$j].', ';</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>/* if($j != 4) {</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>echo '* ';</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>} */</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>}</p><p>}</p><p>?></p><p>

 

위와 같이 여분필드를 뿌려주고있는데요,

wr_2, wr_3, wr_4에서 항상 2, 3, 4 값이있는게 아닙니다.

wr_2만 있을때도 있고, wr_3만 있을때도 있고 wr_2, wr_4가 있을때도 있습니다.

 

wr_n가 어찌됐건 마지막 단어있대 콤마를 지우고싶은데...

어떻게 해야하는지요... 

 

substr을 사용해보기 위해 $list_text = '';를 하나 선언해서

$list_text += $list[$i]['wr_'.$j]; 

 

이런식으로 넣어봤는데 0으로 나오네요...

=로 하면 마지막 여분 필드만 들어가구요...체크박스에서 끌고오는것이라 wr_ 번호가 다양합니다.

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

답변 2개

채택된 답변
+20 포인트
8년 전

 

 

콤마(,)를 앞에다 붙이시고 조건($j != 2)을 붙여 떼어보시면 어떠실가요?

 

</strong></p><p><?php
// 형식
for ($j=2; $j <= 4; $j++) {
 if ($list[$i]['wr_'.$j] ) {
  if ($j != 2) { echo ','; }
  echo $list[$i]['wr_'.$j];
 }
}
?></p><p><strong>
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

이아나
8년 전
답변 감사합니다.

하지만 이렇게 해도 wr_n가 무작위로 나오기 때문에...
wr_2가 아니면 소용이 없더군요...

원래는 변수에 반복문 돌린 값을 대입 하려고 +=를 사용했는데
계속 0이 나와서...

PHP는 대입 방법이 .=로 하는거 같더라구요...
그래서 .=로 대입하고

echo substr(rtrim($변수명), 0, -1);
해서 마지막 콤마와 공백을 제거했습니다.

근데, PHP는 모든 변수가 전역 변수인가요?
아니면 <?php ?> 내에서만 사용하는 지역 변수인가요?

<?php>
<?php
$var = '이거는 바로 위 php까지인가요? 아니면 위에 위까지인가여?';
?>
<?>

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

</p><p>$lists = array(); </p><p>for($j=2; $j<=4; $j++) {</p><p>   if($list[$i]['wr_'.$j]) {</p><p>      $lists[] = $list[$i]['wr_'.$j];</p><p>   } </p><p>}</p><p>echo implode(", ", $lists);</p><p>
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

필모
8년 전
왕계란님에게 드릴 채택이 제게 왔네요. 좋아요라도 드리고 갑니다. 감사합니다.
왕계란
8년 전
그냥 참고하시라고 남긴 거라서요. ㅎㅎ
별로 신경 안 쓰셔도 좋을 듯합니다.

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

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

로그인