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

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

QA

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

본문

안녕하세요.

 


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

 

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

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

 

 

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

 


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

답변 감사합니다.

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

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

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

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

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

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


$lists = array(); 
for($j=2; $j<=4; $j++) {
   if($list[$i]['wr_'.$j]) {
      $lists[] = $list[$i]['wr_'.$j];
   } 
}
echo implode(", ", $lists);
 
답변을 작성하시기 전에 로그인 해주세요.
전체 123,677 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT