In PHP, che personaggio si chiama un operatore backtick
una stringa letterale avvolta in backtick è un token T_ENCAPSED_AND_WHITESPACE
è possibile confermare questa eseguendo qualcosa di simile:..
print_r(token_get_all('<?php `uname`;'));
che ti dà questo:
0.123.
Array
(
[0] => Array
(
[0] => 367
[1] => <?php
[2] => 1
)
[1] => `
[2] => Array
(
[0] => 313
[1] => uname
[2] => 1
)
[3] => `
[4] => ;
)
E quindi eseguire token_name(313)
che fornisce T_ENCAPSED_AND_WHITESPACE
.
Per il parser, una stringa racchiusa tra apici inversi è equivalente acome "hello $world"
. La parte letterale/costante della stringa (la parte hello
) è T_ENCAPSED_AND_WHITESPACE
.
Quindi, per rispondere alla tua domanda, qualsiasi cosa tu possa fare su una stringa che contiene variabili che puoi fare su una stringa avvolta in apici inversi.
Quindi perché T_ENCAPSED_AND_WHITESPACE
? Probabilmente, perché come una stringa contenente variabili, il suo valore è determinato in fase di esecuzione. Mentre uno T_CONSTANT_ENCAPSED_STRING
(una normale stringa letterale) è un po 'come una costante negli occhi del parser.
Si può avere più fortuna con il termine "backtick". Il personaggio diventa un accento solo quando è combinato con una lettera. – Charles
@Charles ti ringrazio per il suggerimento – Kristian