source

PHP의 ==는 대소문자를 구분하는 문자열 비교입니까?

factcode 2022. 11. 26. 13:54
반응형

PHP의 ==는 대소문자를 구분하는 문자열 비교입니까?

php.net에서 찾을 수 없었습니다.이중 등호(==)는 PHP의 문자열을 비교할 때 대소문자를 구분합니다.

네.==는 대소문자를 구분합니다.

대소문자를 구분하지 않는 비교에 사용할 수 있습니다.

네, 하지만 바이트 단위로 비교가 됩니다.

유니코드 문자열을 비교할 경우 먼저 정규화할 수 있습니다.수업을 보세요.

예(UTF-8에서의 출력):

$s1 = mb_convert_encoding("\x00\xe9", "UTF-8", "UTF-16BE");
$s2 = mb_convert_encoding("\x00\x65\x03\x01", "UTF-8", "UTF-16BE");
//look the same:
echo $s1, "\n";
echo $s2, "\n";
var_dump($s1 == $s2); //false
var_dump(Normalizer::normalize($s1) == Normalizer::normalize($s2)); //true

네.==는 대소문자를 구분합니다.

덧붙여서 대소문자를 구분하지 않는 비교에서는 다음을 사용합니다.

<?php
    $var1 = "Hello";
    $var2 = "hello";
    echo (strcasecmp($var1, $var2) == 0); // TRUE;
?>

==대소문자를 구분합니다.

문자열을 무감각하게 비교하려면 다음 중 하나를 사용합니다.strtolower($x) == strtolower($y)또는strcasecmp($x, $y) == 0

==대소문자를 구분하기 때문에 php 매뉴얼에 기재되어 있는 다른 오퍼랜드에 대해 숙지해 주십시오.

http://www.php.net/manual/en/language.operators.comparison.php

네.==는 대소문자를 구분합니다.가장 쉬운 방법은 대문자 변환 후 비교하는 것입니다.예:

$var = "Hello";
if(strtoupper($var) == "HELLO") {
    echo "identical";
}
else {
    echo "non identical";
}

잘 됐으면 좋겠다!

대신 해시 함수와 비교해 볼 수 있습니다.

  if( md5('string1') == md5('string2') ) {
    // strings are equal
  }else {
    // strings are not equal
  }

언급URL : https://stackoverflow.com/questions/3506706/is-in-php-a-case-sensitive-string-comparison

반응형