今日友人から違いについて聞かれたので、ついでに復習しておきます。
一重引用符と二重引用符の違い:
$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
追記:
今日、PHP の一重引用符の問題について言及している外国人を見かけました。その抜粋は次のとおりです:
PHP 拡張機能 Vulcan Logic 逆アセンブラーをインストールすると、次のことがわかると書かれていました。 PHP で生成された中間コード、
最初は:
echo "This is a string";
は次のように変換されます:
ECHO 'This is a string'
と
echo 'This is a string';
は同じです
ECHO 'This is a string'
PHP 生成される OPCODE は
echo "This is a $variable";
で、
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;
になります。 を使用して接続すると、速度が大幅に速くなります。