PHP eco e stampa


Esempio

echo e print sono costrutti linguistici, non funzioni. Ciò significa che non richiedono parentesi attorno all'argomento come fa una funzione (anche se è sempre possibile aggiungere parentesi attorno a quasi tutte le espressioni PHP e quindi echo("test") non farà alcun danno). Eseguono la rappresentazione della stringa di una variabile, di una costante o di un'espressione. Non possono essere utilizzati per stampare matrici o oggetti.

  • Assegna la stringa Joel alla variabile $name

    $name = "Joel";
    
  • Emetti il ​​valore di $ name usando echo e print

    echo $name;   #> Joel
    print $name;  #> Joel
    
  • Le parentesi non sono obbligatorie, ma possono essere utilizzate

    echo($name);  #> Joel
    print($name); #> Joel
    
  • Utilizzo di più parametri (solo echo )

    echo $name, "Smith";       #> JoelSmith
    echo($name, " ", "Smith"); #> Joel Smith
    
  • print , a differenza di echo , è un'espressione (restituisce 1 ) e quindi può essere utilizzata in più punti:

    print("hey") && print(" ") && print("you"); #> you11
    
  • Quanto sopra è equivalente a:

    print ("hey" && (print (" " && print "you"))); #> you11
    

Notazione abbreviata per echo

Al di fuori dei tag PHP , una notazione abbreviata per echo è disponibile per impostazione predefinita, utilizzando <?= Per iniziare l'output e ?> Per terminarlo. Per esempio:

<p><?=$variable?></p>    
<p><?= "This is also PHP" ?></p>

Si noti che non c'è terminazione ; . Questo funziona perché il tag PHP di chiusura funge da terminatore per la singola istruzione. Quindi, è normale omettere il punto e virgola in questa notazione abbreviata.

Priorità della print

Sebbene la print sia una costruzione linguistica, ha priorità come operatore. Mette tra = += -= *= **= /= .= %= &= and operatori e ha lasciato l'associazione. Esempio:

echo '1' . print '2' + 3; //output 511

Stesso esempio con parentesi:

echo '1' . print ('2' + 3); //output 511

Differenze tra echo e print

In breve, ci sono due differenze principali:

  • print richiede solo un parametro, mentre l' echo può avere più parametri.
  • print restituisce un valore, quindi può essere usato come espressione.