변수의 개수를 알아내고 for문을 돌리는 경우에서 질문드립니다.

변수의 개수를 알아내고 for문을 돌리는 경우에서 질문드립니다.

QA

변수의 개수를 알아내고 for문을 돌리는 경우에서 질문드립니다.

본문

쌀쌀한 날씨에 감기 조심들 하세요~

 

우선 제가 구현하고 싶은 것을 순서대로 설명드리면...

$aaa, $bbb, $ccc, $ddd, $eee 라는 변수가 있을 때 이 다섯개의 변수 중 실제 값이 존재하는 것이 몇개인지를 뽑아 그만큼 for문을 돌리는데 제일 마지막 줄 끝에는 ,(콤마)를 빼려고 합니다.

 


<?php
$aaa = "사과",
$bbb = "배";
$ccc ="감";
$ddd = "";
$eee = "딸기";
/*위 변수에서 실제 값이 존재하는 변수의 갯수를 뽑는다*/
$count = /*해결 못한 부분*/;
 
for ($i=0; $i<=$count; $i++) { 
  echo "블라블라블라".",";
  /*마지막줄의 제일 마지막 콤마는 뺀다 - 해결 안된 부분*/
}
?>

 

스크립트에 사용하려고 준비중인데 이 상태에서 진도가 나가질 않습니다.

변수의 갯수를 뽑는 부분과 for문에서 마지막 콤마를 빼는 부분이 어렵네요.

고수님들의 도움 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 3


<?php
$temp = array();
$temp[] = "사과",
$temp[] = "배";
$temp[] = "감";
$temp[] = "";
$temp[] = "딸기";
$str = ''; 
for ($i=0; $i<count($temp); $i++) { 
    if($temp[$i] != '')
    {
        $str .= $temp[$i].",";
    }
}
if(strlen($str)>0)
{
    echo substr($str, 0 ,-1);
}
?>

하시면 될것 같습니다.
 


for ($i=0; $i<=$count; $i++) { 
  $result .= "블라블라블라".",";
  /*마지막줄의 제일 마지막 콤마는 뺀다 - 해결 안된 부분*/
}
echo result = substr($result,0,-1);


마지막 콤마는 저런식으로 하시면 되고, 

변수는 배열을 이용하세요.

a[0] = 'ㅁㄴㅇㄹ'

a[3] ='asdf'


for ($i=0; $i<count(a); $i++) { 
if(a[i]){ //만약 a의 배열값이 있으면..
result .= a[i].","
}
카운트는
$count = count(array_filter(new array($aaa, $bbb, $ccc, $ddd, $eee)));

이렇게 하면 될 것 같고

마지막줄의 제일 마지막 콤마는

 

echo "블라블라블라";

if($i != $count) echo ',';

하시면 될 것 같네요

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 15,429
QA 내용 검색
filter #php ×

회원로그인

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