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

배열에 담은수 카운트하기 질문요~ 채택완료

소수리꼬 7년 전 조회 2,118

$arr = array( 1, 2, 3, 4 );

$num = count($arr);

이렇게 하면 4가 나오는걸로 알고 있습니다.

그럼요.. 만약에

$arr = array( 1,  ,  , 4 );

2와 3이 비어있다면.. 카운트도 역시 4가 나오나요?

배열값이 비어잇는건 놔두고 실제 값이 존재하는것만 카운트하는 함수는 있나요?

실제값이 잇는 배열갯수 2개의 값을 얻고 싶어요..ㅠ

 

감사드립니다.

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

답변 2개

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

$arr = array( 1,  ,  , 4 ); 는 에러가 납니다.

$arr = array( 1,  '',  '', 4 ); 는 가능합니다.

 

존재하는 값만 카운트하는 경우에는,

array_filter 를 활용하면 됩니다. (php 5.3 이상)

echo count(array_filter($arr));

 

* 참고글 - https://stackoverflow.com/a/4422911">https://stackoverflow.com/a/4422911

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

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

플래토
7년 전

$arr = array(1,,,4);

$newcnt = 0;

foreach($arr as $val) {

    if ($val ) $newcnt++;

}

 

echo $newcnt; 

 

로 해보세요

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

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

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

로그인