2014-01-11 2 views

답변

3

아무 것도 확인하지 않습니다. 을 사용 중이므로 ==이 아니므로 과제를 수행하고 있습니다.

이 코드를 최적화하는 방법은 거의 없습니다. 쓰는 것이 지루할 수도 있지만 실행 조건에서는 나쁘지 않습니다. "더 짧은"코드를 "더 효율적"이라고 혼동하지 마십시오. 예 :

if (!in_array($a, array('a', 'b', 'c')) { ... } 

은 코드가 적습니다. 하지만 코드보다 WORSE가 거의 확실하게 수행됩니다. 왜? 이제 PHP는 PHP로 배열을 생성합니다. 그런 다음 내부적으로 해당 배열을 반복하고 각각의 값을 $ a와 개별적으로 비교해야합니다. "지루한"if() 작업과 동일합니다. 따라서 "작성한 배열 작성"요구 사항을 모두 추가 했으므로 작성한 코드의 양은 줄 였지만 실행 시간은 늘어났습니다. PHP 매뉴얼에서

+0

뜻은 === 죄송합니다. – user3002686

+1

'을 (를) 제거하지 마십시오. –

+0

@ Mr.Alien : 실제 if() 내용이 어떻게 배열되어 있느냐에 따라 다르지만 예, 필요 없음 –

1

: in_array()

if (in_array($a, array("b","c","d"))) { 
    echo $a; 
} else{ 
    echo 'a is not........'; 
} 
2

내가 대신 switch를 사용하는 경향 될 것입니다. 나는 그것을 더 쉽게 읽을 수있다.

switch ($a) { 
case 'b': 
case 'c': 
case 'd': 
    echo $a; 
    break; 
default: 
    echo 'a is not........'; 
    break; 
} 
+0

이것은'if elseif else'에서 실제로 유용합니다. –