>백엔드 개발 >PHP 튜토리얼 >PHP 및 논리 연산의 세부 사항 PHP 복호화 Band of Brothers PHP 민주주의의 세부 사항

PHP 및 논리 연산의 세부 사항 PHP 복호화 Band of Brothers PHP 민주주의의 세부 사항

WBOY
WBOY원래의
2016-07-29 08:53:111235검색

모두가 일반적인 기술을 알고 있으며 세부 사항이 높이를 결정합니다. 오늘은 PHP의 ++ 및 논리 연산자에 대한 세부 사항에 대해 이야기해 보겠습니다.

++ 우리 모두는 특정 값을 증가시키는 것이라는 것을 알고 있습니다. 1이지만 ++는 앞++과 뒤++로 나누어집니다.

$a=5;$b=0;

$a++ //a=6; >

$b=$a++;//이 $b는 무엇인가요? $b=5, 이것이 먼저 할당된 다음 $a++;

$b=++$a;//현재 $b는 무엇과 같습니까? ++가 먼저 실행된 다음 할당되기 때문에 $b는 6입니다.

마찬가지로 일부 방정식을 얻을 수 있습니다.

$a++*4=20;

++ $a*4=24;

이러한 세부 사항으로 인해 프로그램에 버그가 발생하는 경우가 있어 오류 신고가 쉽지 않습니다.

다음은 ++와 논리 연산자의 조합에 관한 질문입니다.

if($a>0||++$b>0){

echo $ b ; $b 는 무엇인가요? $b는 0과 같습니다. || 논리의 실행 규칙은 첫 번째 항목이 true인 한 두 번째 항목은 실행되지 않는다는 것입니다.

}

if($a ++>5 ||$b>0){

//들어올래? 대답은 '아니오'입니다. 먼저 비교한 다음 $a +1

}

오늘 제가 더 우아한 경우는 드물기 때문에 세부 사항에 주의하겠습니다. switch:

function test(변수){

switch(변수){

case 1:echo '함수의 변수는 1;break;

case 2:echo '함수 변수는 2; break;


case 3:echo '함수 변수는 3break;


default:echo ' 함수 변수가 값 범위에 없습니다.';

}

}

test(1)==>케이스 1이 실행될 것이라는 데는 의심의 여지가 없습니다.


test('1')==>이렇게 하면 실행되나요? 결과적으로 case1은 동일한 방식으로 실행됩니다. 이는 Case 뒤의 변수 유형이 전달된 매개변수 유형과 다른 경우 스위치에 의해 전달된 매개변수와 최대한 일치하도록 유형을 자동으로 변경함을 보여줍니다. 여기서 질문을 하시는 분들이 계시는데, 왜 매개변수 유형이 아닌 숫자 유형이 바뀌었나요?

걱정하지 마세요. 지금 증명해 보겠습니다.

test(true);==> 어느 것이 실행되나요? ===》답은 1이 직접 boll 유형으로 변환되어 스위치의 매개변수와 최대한 일치하기 때문에 실행된다는 것입니다. 다시 말하지만, true도 얻을 것입니다. 1 변환 후에는 후속 매개변수가 전송된다는 것을 증명할 수 없습니다. 이를 증명하려면 테스트 기능을 수정하면 됩니다.

함수 테스트(변수){

switch(변수){

case '12345':echo '함수 변수는 1;break;

case 2: echo '함수 변수는 2;break;


case 3:echo '함수 변수는 3break;


default:echo ' 함수 변수가 값 범위에 없습니다' ;

}

}

보세요, true로 변환하면 '12345' 일치가 불가능하지만 true와 일치할 수 있음을 증명합니다. '12345'로 변환하면.

이것은 기초가 탄탄하지 않은 친구들에게 도움이 되기를 바랍니다. 사실 php, js, ruby, asp.net 만 같은 언어는 아닙니다. ​공통점이 많다.

위 내용은 PHP를 포함한 논리연산과 세부사항을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.