PHP concatenazione di stringhe con “”?
-
18-09-2019 - |
Domanda
Ho appena scoperto qualcosa.
echo $var1 , " and " , $var2;
è lo stesso:
echo $var1 . " and " . $var2;
Qual è l'attuale operatore di concatenazione di stringhe in php? Dovrei usare .
o ,
?
Soluzione
L'operatore .
è l'operatore di concatenazione. Il tuo primo esempio funziona solo perché la 'funzione' eco (tecnicamente si tratta di un costrutto del linguaggio, ma non lascia il sottile) accetta più di un parametro, e stamperà ciascuno.
Così il vostro primo esempio sta chiamando eco con più di un parametro, e sono tutti in fase di stampa, rispetto al secondo esempio in cui tutte le corde vengono concatentated e che una grande stringa è in fase di stampa.
Altri suggerimenti
La concatenazione reale è .
(punto). Utilizzando ,
(virgola) lì, si sta passando più argomenti al href="http://php.net/echo" rel="nofollow noreferrer"> echo
funzione . (In realtà, echo
non è una funzione, ma un costrutto del linguaggio PHP, che significa che è possibile omettere le parentesi intorno alla lista di argomenti che sono necessari per richiamare le funzioni.)
Nel primo caso è sufficiente echo 3 stringhe differenti.
Nel secondo caso si concatenare le 3 stringhe e quindi eco l'uscita.
Quindi, la risposta è che, al fine di concatenare le stringhe si dovrebbe usare il punto (.)
"". L'altro appena scrive diversi valori in modo indipendente, senza in realtà concatenare la stringa.
Vedi anche PHP echo riferimento, il "" variante funziona solo con metodi accettare più parametri.
"" concatena "" possono essere utilizzati solo per echo
che è un costrutto del linguaggio (una sorta di funzione)
vedi anche:? differenza tra periodo e una virgola
Utilizzando una virgola in realtà non concatenare le stringhe.
questa risposta ad un'altra domanda.
Il "" è l'operatore di concatenazione corretta. "Echo" accetta anche "", trattandolo come se si passa in una serie di argomenti al metodo 'echo' e quindi eco ciascuno. Non è veramente concatenare le stringhe.
NOP è perché eco potrebbe richiedere più di un argomento, che avrebbe fatto la stampa ogni argomenti