>  기사  >  백엔드 개발  >  PHP에서 문자열과 정수 비교

PHP에서 문자열과 정수 비교

angryTom
angryTom앞으로
2019-10-15 11:31:082537검색

오늘 PHP에서 루프를 다룰 때 비교 연산이 있었는데 결과가 전혀 예상과 달랐기 때문에 추적해 보니 문자열을 정수와 비교할 때 문자열이 정수로 변환되는 것을 발견했습니다. 그런 다음 비교하십시오. 이는 문자열을 변환한 후 비교하기 때문에 Java 및 C와 같은 강력한 유형의 언어에서는 문제가 되지 않습니다. 그러나 PHP와 같은 약한 유형의 언어에서는 직접 비교가 가능한 경우 문제가 발생합니다. 만들어진.

$a = "梦回故里";
if($a==0){
       echo "等于";
}else{
    echo "不等于";
}

예를 들어 다음 코드에서 처음에는 같지 않은 결과가 출력될 것이라고 생각했습니다. 왜냐하면 $a는 우리가 이해한 대로 true여야 하고 1이어야 하므로 어쨌든 같지 않기 때문입니다. 그러나 결과는 같습니다. $a는 정수로 변환되므로 첫 번째 문자부터 변환이 시작됩니다. 정수가 아닌 경우 0으로 변환됩니다.

예를 들어 다음 예는 #🎜 🎜#

$a = "梦回故里1";
if(0==$a){
       echo "等于";
}else{
    echo "不等于";
}

첫 번째 꿈 문자가 정수가 아니므로 0으로 변환되므로 이는 여전히 Equal to로 출력됩니다.

$a = "1梦回故里";
if(0==$a){
       echo "等于";
}else{
    echo "不等于";
}

This는 다음과 같지 않게 출력됩니다. 첫 번째가 1이면 1로 변환된 다음 비교되므로 같지 않습니다.

PHP 언어는 우리에게 충분한 자유도를 제공하고 배우기 쉽지만 탄탄한 기초를 다지고 세부 사항에 주의를 기울여야 합니다. 세부 사항이 성공 또는 실패를 결정합니다.

더 많은 PHP 관련 지식을 보려면

PHP中文网을 방문하세요!

위 내용은 PHP에서 문자열과 정수 비교의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 zyan.cc에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제