回聲和列印

echoprint 是語言結構,而不是函式。這意味著它們不需要像函式那樣圍繞引數使用括號(儘管幾乎可以在任何 PHP 表示式周圍新增括號,因此 echo("test") 也不會造成任何傷害)。它們輸出變數,常量或表示式的字串表示形式。它們不能用於列印陣列或物件。

  • 將字串 Joel 分配給變數 $name

    $name = "Joel";
    
  • 使用 echoprint 輸出$ name 的值

    echo $name;   #> Joel
    print $name;  #> Joel
    
  • 括號不是必需的,但可以使用

    echo($name);  #> Joel
    print($name); #> Joel
    
  • 使用多個引數(僅限 echo

    echo $name, "Smith";       #> JoelSmith
    echo($name, " ", "Smith"); #> Joel Smith
    
  • print,與 echo 不同,是一個表示式(它返回 1),因此可以在更多地方使用:

    print("hey") && print(" ") && print("you"); #> you11
    
  • 以上相當於:

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

echo 的簡寫符號

在 PHP 標籤之外時 ,預設情況下可以使用 echo 的簡寫表示法,使用 <?= 開始輸出,使用 ?> 結束它。例如:

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

請注意,沒有終止 ;。這是有效的,因為關閉的 PHP 標記充當單個語句的終止符。因此,在這種速記符號中省略分號是常規的。

tihuan 的優先權 17

雖然 print 是語言結構,但它優先於運算子。它位於 = += -= *= **= /= .= %= &=and 運算子之間並且已經離開了協會。例:

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

括號中的相同示例:

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

echoprint 之間的差異

簡而言之,有兩個主要區別:

  • print 只有一個引數,而 echo 可以有多個引數。
  • print 返回一個值,因此可以用作表示式。