오늘 친구가 차이점에 대해 물어봤는데, 그런데 리뷰를 하려고 합니다.
작은따옴표와 큰따옴표의 차이점:
$hello= 3; echo "hello is $hello"; // 打印结果:hello is 3 echo 'hello is $hello'; // 打印结果: hello is $hello echo "hello is $hello\n"; // 打印结果: hello is 2 (同时换行) echo 'hello is $hello\n'; // 打印结果: hello is $hello\n
PS:
오늘 PHP에서 작은따옴표 문제를 언급하는 외국인을 보았는데, 그 내용 중 흥미로운 내용이 있습니다.
PHP 확장 Vulcan Logic Disassembler를 설치하면 PHP에서 생성된 중간 코드를 볼 수 있다고 합니다.
첫 번째는:
echo "This is a string";
은 다음과 같이 변환됩니다.
ECHO 'This is a string'
그리고
echo 'This is a string';
은
이 됩니다.ECHO 'This is a string'
, 똑같아
그렇다면
echo "This is a $variable";
PHP가 생성한 OPCODE는
INIT STRING ~0 2 ADD_STRING ~0 ~0 'This' 3 ADD_STRING ~0 ~0 ' ' 4 ADD_STRING ~0 ~0 'is' 5 ADD_STRING ~0 ~0 ' ' 6 ADD_STRING ~0 ~0 'a' 7 ADD_STRING ~0 ~0 ' ' 8 ADD_VAR ~0 ~0 !0 9 ECHO ~0
그리고
echo "This is a " . $variable;
은
이 됩니다.
CONCAT ~0 'This is a ' !0 2 ECHO ~0
보시다시피 연결해서 사용하시면 속도가 훨씬 빠릅니다.