>  기사  >  백엔드 개발  >  PHP에서 count는 다차원 배열의 길이를 구하고 다차원 배열이 비어 있는지 확인합니다. 예제 코드.

PHP에서 count는 다차원 배열의 길이를 구하고 다차원 배열이 비어 있는지 확인합니다. 예제 코드.

怪我咯
怪我咯원래의
2017-07-10 13:51:011609검색

이 글에서는 주로 다차원 배열의 길이를 구하는 방법을 소개합니다. 이 예제는 배열의 원리를 분석하고 배열 길이를 계산하는 방법을 요약한 것입니다. 이 방법이 필요한 친구들에게는 큰 도움이 될 것입니다. 참고하세요

이 글에서는 다차원 배열의 길이를 구하기 위해 PHP에서 count를 구현하는 예제를 설명하고 있습니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

먼저 다음 프로그램의 실행 결과를 살펴보겠습니다.

코드는 다음과 같습니다.

$numb=array( 
            array(10,15,30),array(10,15,30),array(10,15,30) 
); 
  
echo count($numb,1);

A.3
B.12
C.6
D.9
답은 B
count 함수에 있는 경우입니다. 모드가 COUNT_RECURSIVE(또는 1)로 설정된 경우 다차원 배열의 배열 요소 수가 재귀적으로 계산됩니다(즉, 결과에서는 12). 모드가 설정되지 않은 경우 기본값은 0입니다. 다차원 배열(배열 내의 배열)은 감지되지 않습니다(결과 3).

가장 먼저 탐색해야 할 것은 외부 배열입니다2개의 요소("color1", "color2", "color3")가 있으며 이는 3입니다.
그런 다음 ("color1", "color2"를 탐색합니다. ", "color3") 배열 결과는 9개의 요소가 9입니다
결과는 3+9=12

입니다. 참고 예:

코드는 다음과 같습니다.

<?php
$fruits = array (
    array (1, 2,null,null, 5, 6),
    array (1, 2,null,null, 5, 6),
);
echo(count($fruits[0]));
?>

배열이 다른 항목에 정의된 경우

코드는 다음과 같습니다:

<?php
$fruits[0][0]=1;
$fruits[0][3]=1;
$fruits[0][4]=1;
echo(count($fruits[0]));
?>

PHP의 배열에서는 index가 연속적일 필요가 없으므로 3이 출력됩니다. 참조 매뉴얼에는 다음과 같은 단락이 있습니다.

Array :
PHP의 배열은 실제로 순서가 지정된 그래프입니다. 그래프는 값을 키에 매핑하는 유형입니다. 이 유형은 여러 가지 방법으로 최적화되어 있으므로 실제 배열 또는 목록(벡터), 해시 테이블(그래프 구현), 사전, 세트, ​​스택, queue 등으로 사용할 수 있습니다. 다른 PHP 배열을 값으로 사용할 수 있으므로 트리를 쉽게 시뮬레이션할 수도 있습니다.

예:

2차원 또는 다차원 배열의 첫 번째 차원 길이를 구합니다. 예를 들어, 읽는 배열은 2차원 배열입니다.

코드는 다음과 같습니다.

<?php
$arr=array(
 0=>array(&#39;title&#39; => &#39;新闻1&#39;, &#39;viewnum&#39; => 123, &#39;content&#39; => &#39;ZAQXSWedcrfv&#39;),
 1=>array(&#39;title&#39; => &#39;新闻2&#39;, &#39;viewnum&#39; => 99, &#39;content&#39; => &#39;QWERTYUIOPZXCVBNM&#39;)
);
?>

$arr 배열의 길이, 즉 2차원 배열에 뉴스가 2개만 있는 경우 원하는 숫자도 2인데, 이를 사용하면 count($arr) PHP 버전이 다르면 통계 결과가 다릅니다. ;

나중에

php 매뉴얼에서 count 함수에 두 번째 매개변수가 있다는 것을 발견했습니다. 매개변수:

0(또는 COUNT_NORMAL)이 기본값이고 (배열 내) 다차원 배열이 감지되지 않습니다. 배열)

1(또는 COUNT_RECURSIVE)은 다차원 배열을 감지하는 것입니다.

그래서 원하는 경우 읽기 배열 $arr에 뉴스 정보가 있는지 판단하려면 다음과 같이 작성해야 합니다.

코드는 다음과 같습니다.

<?php
if(is_array($arr) && count($arr,COUNT_NORMAL)>0 )
{
  .....
} else {
  .....
}
?>
다음과 같은 코드를 사용하여 함수를 테스트할 수 있습니다.

코드는 다음과 같습니다.

<?php
$arr=array(
 0=>array(&#39;title&#39; => &#39;新闻1&#39;, &#39;viewnum&#39; => 123, &#39;content&#39; => &#39;ZAQXSWedcrfv&#39;),
 1=>array(&#39;title&#39; => &#39;新闻2&#39;, &#39;viewnum&#39; => 99, &#39;content&#39; => &#39;QWERTYUIOPZXCVBNM&#39;)
);
echo &#39;不统计多维数组:&#39;.count($arr,0);//count($arr,COUNT_NORMAL)
echo "<br/>";
echo &#39;统计多维数组:&#39;.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>

자, 이제 PHP에서 2차원 또는 다차원 배열의 첫 번째 차원 길이를 구하는 문제가 해결되었습니다.

다음은 다차원 배열이 비어 있는지 확인하는 예제 코드입니다.

<?php
//判断一个数组是否为空
/**
array(
); 空
array(
array(
),
array(
),
array(
)
); 空
array(
array(
),
array(
array(
),
array(
1=>1
)
),
array(
)
); 非 空
*/
function is_array_null($value)
{
if (empty($value))
{
return $value;
}
else
{
return is_array($value) ? array_map(&#39;array_null&#39;, $value) : addslashes($value);
}
}

위 내용은 PHP에서 count는 다차원 배열의 길이를 구하고 다차원 배열이 비어 있는지 확인합니다. 예제 코드.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.