2014-11-14 1 views
-1

strlen()을 사용하여 두 배열의 길이를 비교하고 싶습니다. 한 배열의 길이가 다른 배열의 길이보다 길면 뭔가를하십시오.문자열 대신 배열로 strlen() 사용

불행히도 strlen()은 문자열에서만 작동합니다. 어떻게 배열로 사용할 수 있습니까?

내 코드 :

$array1 = array(
     'Hello World', 
     'Hello World', 
     'Hello World', 
     'Hello World', 
     'Hello World' 
    ); 

    $array2 = array(
     'Hello World', 
     'Hello World' 
    ); 


if (strlen($array1) > strlen($array2)) { 

    echo 'It works you fool!'; 

} 
+1

카운트 기능을 사용하십시오. 'if (count ($ array1)> count ($ array2)) {' – slapyo

+1

나는 너 자신을 위해 이것을 해결할 수 없다는 것에 놀랐다. – Steve

+0

또는 C 언어에서 온 경우 sizeof() @ –

답변

1

는 어떻게하면 배열 작업을 할 수 있습니까? strlen()에 대한

PHP 매뉴얼 : 배열에서 실행 및 E_WARNING 레벨의 에러가 방출 될 때

나 strlen()는 NULL을 반환한다.

정말로 할 수는 없습니다.

왜 이렇게하고 싶은가?

if (strlen($array1) > strlen($array2)) 
    { 
    echo 'It works you fool!'; 
    } 

가하지 마십시오 객체에 배열의 모든 요소를 ​​계산, 또는 무언가 -

수 : count() - 완벽하게 좋은 당신이 원하는 것을 달성하기 위해 기능이 있습니다
PHP 함수가 설계되지 않은 시나리오에서 필요에 맞게 작동합니다.
특히 거의 언제나 당신의 필요에 맞는 완벽하게 좋은 기능이있을 때.

미래의 변화도, 당신의 "해킹"더 이상 작동을하고, 또한 올바른 기능을 사용하면 자주 두통을 일으키는 주위 해킹

등 등, 정확성, 안정성, 속도를 보장하는 PHP 혜택을 누릴 가능성을 의미하여 수 미래가 아니라면 지금.

3

당신이 count()을 사용해야 배열의 길이를 얻을 수 있습니다.

if (count($array1) > count($array2)) { 
    echo 'It works you fool!'; 
} 
+0

맞아 ... 고마워. 몇 분 안에 올바른 것으로 표시됩니다. –

+0

또는 [sizeof()] (http://ca3.php.net/manual/en/function.sizeof.php), 이는 정확히 동일한 것입니다 –

+0

@ sean9999 So 차이점이 뭐야? 성능 측면에서 사용하는 것이 더 나은 점은 무엇입니까? –