strcmp () 는 PHP의 문자열 함수 중 하나입니다. 동일하다면 0; 첫 번째 문자열이 작 으면 음수를 반환하십시오. 그 반대도 마찬가지입니다.
strcmp (String $ str1, String $ str2) : int
$ str1 : 비교할 첫 번째 문자열
$ str2 : 비교할 두 번째 문자열
strcmp () 함수는 문자열의 비교 결과에 따라 값이 결정되는 정수를 반환합니다. 두 줄이 같으면 0; 문자열 1이 문자열 2보다 작은 경우 0보다 작은 값을 반환합니다. 문자열 1이 문자열 2보다 큰 경우 0보다 큰 값을 반환하십시오.
$ str1 = "Hello World";
$ str2 = "Hello World";
echo strcmp ($ str1, $ str2);
출력 결과 : 0
설명 : $ str1 및 $ str2 문자열은 동일하므로 strcmp ()는 값 0을 반환합니다.
$ str1 = "Hello World";
$ str2 = "Hello World!";
echo strcmp ($ str1, $ str2);
출력 결과 : -1
설명 : $ str1 문자열은 $ str2보다 작으므로 strcmp ()는 0보다 작은 값을 반환합니다.
PHP에서, strcmp () 함수를 사용하여 문자열을 비교하는 것 외에도 연산자 "=="및 "==="도 비교할 수 있지만 strcmp () 함수와는 매우 다릅니다.
연산자 "=="은 두 변수의 값을 비교하는 데 사용됩니다. 값이 동일하면 true를 반환하십시오. 그렇지 않으면 false를 반환하십시오. 그러나 두 줄을 비교할 때 예측할 수없는 결과를 얻을 수 있습니다.
$ str1 = "123";
$ str2 = "123";
if ($ str1 == $ str2) {echo "true"; } else {echo "false"; }
출력 결과 : True
참고 : $ str1과 $ str2의 값은 다르지만 연산자 "=="는 여전히 동일하게 간주합니다.
연산자 "==="는 두 변수의 값과 유형을 비교하는 데 사용됩니다. 값과 유형이 동일하다면 TRUE를 반환하십시오. 그렇지 않으면 거짓. 이 연산자를 사용하여 두 줄을 비교할 때는 예상대로 작동합니다.
$ str1 = "123";
$ str2 = "123";
if ($ str1 === $ str2) {echo "true"; } else {echo "false"; }
출력 결과 : False
참고 : 연산자 "===", $ str1 및 $ str2는 다른 유형으로 간주되므로 작동 결과는 False입니다.
"=="및 "==="연산자와 비교하여 strcmp () 함수는 두 줄을 비교하는 데 선호되는 방법입니다. 예를 들어 양식 검증에서 문자열이 같은지 확인하는 데 종종 사용됩니다.
$ str1 = $ _post [ '비밀번호'];
$ str2 = "Qwerty";
if (strcmp ($ st1, $ str2) === 0) {// 비밀번호가 올바르게 입력되었습니다} else {// 비밀번호가 잘못되었습니다}
이 코드는 사용자가 입력 한 암호를 사전 정의 된 비밀번호로 비교합니다. 동일하면 비밀번호가 정확합니다. 그렇지 않으면 암호가 잘못되었습니다. strcmp () 함수가 더 정확하기 때문에 비밀번호가 잘못 허용되지 않도록합니다.
strcmp () 는 PHP에서 매우 유용한 문자열 함수이며, 두 줄이 동일한지 비교하는 데 사용됩니다. 운영자 "=="및 "==="를 사용하는 것이 더 쉬울 수 있지만 경우에 따라 문자열 비교를 위해 strcmp ()를 사용하면 비교 결과의 정확성을 보장합니다.