배열에 둘 이상의 요소가 있는지 확인해야합니다. 나는 이런 식으로하려고합니다.
if (isset($arr['1']))
다른 전통적인 방법은
if (sizeof($arr)>1)
둘 중 어느 것이 더 낫습니까? 그러한 상황에서 두 가지 대체 방법을 어떻게 판단해야합니까? 어느 쪽이 더 나은지 측정 할 수있는 성능 점검 미터가 있습니까?
답변
이것을 사용하십시오
if (sizeof($arr) > 1) {
....
}
또는
if (count($arr) > 1) {
....
}
sizeof()에 대한 별칭이며 count()동일한 방식으로 작동합니다.
편집 :
질문의 두 번째 부분에 대한 답변 : 질문의 두 줄은 대체 방법이 아니며 다른 기능을 수행합니다. 첫 번째는 at 값 $arr['1']이 설정되어 있는지 확인 하고 두 번째는 배열의 요소 수를 반환합니다.
답변
if(is_array($arr) && count($arr) > 1)
$ arr이 실제로 배열인지 확인하십시오.
sizeof의 별칭이며 countcount 때문에 다음을 선호합니다.
- 1 자 이하로 입력
- 한 눈에 sizeof는 메모리 측면에서 배열의 크기를 의미 할 수도 있습니다.
답변
if (count($arr) >= 2)
{
// array has at least 2 elements
}
sizeof()의 별칭입니다 count(). 둘 다 배열이 아닌 배열에서도 작동하지만 인수가 배열 또는 Countable객체 인 경우 1보다 큰 값만 반환 하므로 매우 안전합니다.
답변
분명히 count($arr) > 1(을 sizeof위한 별칭 일뿐 count)을 사용하는 것이 가장 좋은 솔루션입니다. 배열의 구조에 따라 많은 요소가 있지만 요소는 없을 수 있습니다 $array['1'].
답변
답변
내가 선호하는 count()대신 기능 sizeOf()으로 sizeOf()의 별칭입니다 count()및 기타 여러 언어로 같은 것을 의미하지 않는다. 많은 프로그래머 sizeof()는 할당 된 메모리 양을 반환 할 것으로 예상 합니다.
답변
배열을 확인하려면 empty ()가 sizeof ()보다 낫습니다.
배열에 많은 양의 데이터가 포함 된 경우 배열의 크기를 계산하는 데 더 많은 시간이 걸립니다. 그러나 비어있는 검사는 항상 쉽습니다.
//for empty
if(!empty($array))
echo 'Data exist';
else
echo 'No data';
//for sizeof
if(sizeof($array)>1)
echo 'Data exist';
else
echo 'No data';
