pass - php var function




1... 1이 10.1로 평가되는 이유는 무엇입니까? (3)

이 질문에는 이미 답변이 있습니다.

나는 3v4l에서 약간의 PHP 스 니펫에 직면했다 : https://3v4l.org/jmrZB

echo 1...1; //10.1

그리고 나는 그 결과를 어떻게 설명 할 지 모르겠다. 왜 이것이 유효한 것으로 간주되는 것입니까?


다른 운영.

1. <?php echo 1.1; ?> // gives simple 1.1
2. <?php echo 1...1; ?> // gives 10.1
3. <?php echo 1..'1'; ?> // gives 11
4. <?php var_dump(1.); ?> // gives 1
5. <?php var_dump(.1); ?> // gives 0.1

자, 우리의 이상한 수술

echo 1...1 

4 번과 5 번 연결로 처리하여 10.1


왜냐하면 그것은 1. 해석 되었기 때문 . .1 ( 10.1 ) 따라서 10.1 을 얻습니다.


중괄호를 적용하면 명확 해집니다.

(1.) . (.1)

  • 1.1. 로 해석됩니다.
  • . 문자열 연결
  • .1.1 로 해석됩니다.

이 모든 문자열에 넣은 문자열은 10.1 입니다.

var_dump(1...1)string(4) "10.1"





ellipsis