PHP 프로그래밍에서 에코를 연결하기 위해 쉼표와 점을 사용하는 것의 차이점

WBOY
풀어 주다: 2016-07-29 08:56:04
원래의
932명이 탐색했습니다.

.connection을 사용하는 것보다 echo string을 사용하는 것이 더 좋다고 합니다. 이유는 논하지 말고 다음 두 문장을 살펴보겠습니다.

 <p>결과는 무엇입니까? <br></p><p></p><pre class="brush:php;toolbar:false">1+5=6?
1+5=6?
——————
6?
2?
——————
6.6?
6.6?
——————
로그인 후 복사

echo '5 1=' 1 5; 결과는 6과 2라고 밖에 말할 수 없습니다.

왜 그럴까요? PHP에는 교환 속성이 ​​없는 걸까요...
위의 마침표를 쉼표로 바꿔서 생각해 봅시다.

echo '1+5=' , 5+1;  //输出 1+5=6 
echo '1+5=' , 1+5;  //输出 1+5=6 

로그인 후 복사

쉼표를 사용해야만 원하는 결과를 얻을 수 있음을 알 수 있습니다.

그럼 마침표는 왜 작동하지 않습니까? 일?

echo ('1+5' . 5)+1; //输出2 

로그인 후 복사

이전 괄호에 괄호를 추가하면 결과는 동일합니다.

PHP가 문자열을 연결한다는 것을 증명하세요. 덧셈 계산은 왼쪽에서 오른쪽으로 진행됩니다.

문자열이 먼저 연결되었으므로 이 문자열을 사용하여 1 을 더해야 합니다. 그렇다면 왜 2가 출력되나요?

이것은 PHP에서 문자열을 숫자로 변환하는 메커니즘과 관련이 있습니다.

echo (int)'abc1';  //输出0
echo (int)'1abc'; //输出1
echo (int)'2abc'; //输出2
echo (int)'22abc'; //输出22
로그인 후 복사

위의 예에서 문자열을 숫자로 변환해야 하는 경우 PHP는 문자열의 시작 부분을 검색하여 시작 부분이 숫자인 경우 변환된다는 것을 알 수 있습니다. > 그렇지 않다면 그냥 0을 반환합니다.


지금은 1 55로 돌아갑니다. 이 문자열은 1 55이므로 강제 유형 변환 후에는 1이 되어야 합니다. 물론 2입니다. .

우리의 추측을 증명하기 위해 검증해보겠습니다.



echo '5+1=' . 1+5; //输出10
echo '5+1=' . 5+1; //输出6
echo '1+5=' . 1+5; //输出6
echo '1+5=' . 5+1; //输出2
로그인 후 복사
결과는 우리의 가정이 옳았다는 것을 증명합니다.그럼 위의 내용은 왜? 쉼표를 사용하면 문제가 사라집니다.



쉼표를 사용하면 여러 매개변수를 의미한다고 합니다.


즉, 다중 매개변수입니다.


은 N개의 매개변수와 동일합니다. 즉, echo를 함수로 사용합니다.


이 경우 echo는 각 매개변수를 먼저 계산한 후 연결합니다. 따라서 쉼표를 사용하면 위의 문제가 발생하지 않습니다. :)

php echo manual

빠른 것이 무엇인지는 간단하게 설명할 수 있습니다. 쉼표의 수는 에코 호출 횟수를 나타내지만 먼저 에코에 연결하려면 .를 사용하세요. 그러나 접합 속도는 에코 속도보다 느립니다. <p>깊이 이해해보면 VLD는 아래와 같습니다. @tywei님 사진입니다 <br><br></p><p><img src="http://image.codes51.com/Article/image/20160328/20160328172441_4817.jpg" baiduimageplusstatus="2" baiduimageplusrect="null" alt="PHP 프로그래밍에서 에코를 연결하기 위해 쉼표와 점을 사용하는 것의 차이점"><br> 위쪽이 아래쪽보다 CONCAT이 더 많고 아래쪽이 위쪽보다 울림이 더 많아요. </p>
                
                
                <p>
                    위 내용은 관련 내용을 포함하여 PHP 프로그래밍에서 에코를 연결하기 위해 쉼표와 점을 사용하는 것의 차이점을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다. </p>
                <p>
                    </p>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿