이 글에서는 PHP의 switch와 ifelse를 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
PHP 스위치와 ifelse 중 누가 더 빠릅니까?
여러 if 조건을 판단할 때 ifelse 대신 스위치를 사용하면 코드가 더욱 명확해집니다. 그러면 효율성 비교는 어떻게 될까요? PHP 매뉴얼에서 누군가가 이미 비교한 것을 발견했고, 그의 코드로 실험도 진행했습니다:
$s = time(); for ($i = 0; $i < 1000000000; ++$i) { $x = $i % 10; if ($x == 1) { $y = $x * 1; } elseif ($x == 2) { $y = $x * 2; } elseif ($x == 3) { $y = $x * 3; } elseif ($x == 4) { $y = $x * 4; } elseif ($x == 5) { $y = $x * 5; } elseif ($x == 6) { $y = $x * 6; } elseif ($x == 7) { $y = $x * 7; } elseif ($x == 8) { $y = $x * 8; } elseif ($x == 9) { $y = $x * 9; } else { $y = $x * 10; } } print("if: " . (time() - $s) . "sec\n"); $s = time(); for ($i = 0; $i < 1000000000; ++$i) { $x = $i % 10; switch ($x) { case 1: $y = $x * 1; break; case 2: $y = $x * 2; break; case 3: $y = $x * 3; break; case 4: $y = $x * 4; break; case 5: $y = $x * 5; break; case 6: $y = $x * 6; break; case 7: $y = $x * 7; break; case 8: $y = $x * 8; break; case 9: $y = $x * 9; break; default: $y = $x * 10; } } print("switch: " . (time() - $s) . "sec\n");
1000000000번 반복하고 각 판단 조건에 계산 연산을 추가한 결과, 그 결과는 스위치의 효율성이라는 것을 알았습니다. 내 컴퓨터의 결과는 다음과 같습니다.
// if: 301sec // switch: 255sec
스위치가 더 효율적이지만 주의할 점도 있습니다. 우선 판단 값은 숫자, 부동 소수점 숫자 또는 문자열만 될 수 있습니다. . 둘째, 각 판단은 일반적인 == 판단입니다. 즉, 다음 판단 결과가 반드시 귀하의 판단과 동일하지는 않습니다.
$string = "2string"; switch ($string) { case 1: echo "this is 1"; break; case 2: echo "this is 2"; break; case '2string': echo "this is a string"; break; } // this is 2
예, == 비교, 문자열 및 int 비교 중 여전히 유형 강제 문제입니다. 값은 int 유형으로 강제 변환됩니다. "2string"의 강제 변환 결과는 정확히 2입니다. 따라서 스위치를 사용할 때에는 비교값이 각 사례의 유형과 일치하는지 확인해야 하며, 그렇지 않으면 예측할 수 없는 오류가 발생할 수 있습니다.
참조 코드:
https://github.com/zhangyue0503/dev-blog/blob/master/php/201911/source/PHP%E7%9A%84switch%E5%92%8Cifelse%E8%B0%81%E6%9B%B4%E5%BF%AB%EF%BC%9F.php
추천 학습: php 비디오 튜토리얼
위 내용은 PHP 스위치와 ifelse 중 어느 것이 더 낫습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

드림위버 CS6
시각적 웹 개발 도구

Dreamweaver Mac版
시각적 웹 개발 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
