是什麼
<?php echo '$test'; ?>
和
<?=$test?>
之間的區別?
是什麼
<?php echo '$test'; ?>
和
<?=$test?>
之間的區別?
前者輸出文字字符串$test
,後者輸出值$test
。
如果您打開了短標籤。 – 2010-09-02 04:42:31
假設你的意思是<?php echo $test; ?>
,這兩者實際上是一回事。問題是,你想成爲多麼便攜。 <?php ?>
幾乎支持PHP的任何地方,但很多管理員禁用<?= ?>
語法。
我相信他錯打了他的問題... – polemon 2010-09-02 02:50:40
@polemon - 同意 – 2010-09-02 02:52:43
我傾向於使用<?= ?>
(稱爲short_open_tags
)作爲模板或腳本的「視圖」部分。但是,這必須在php.ini中明確啓用,因此如果您正在使用腳本進行分發,最好避免使用它,除非您不關心腳本的買方/用戶是否可能沒有打開short_open_tags
。
此外,啓用'short_open_tags'使得' ... ?>'而不是''可以有意想不到的副作用,因爲PHP不是唯一使用帶有問號格式的標籤(首先,一個有效的XHTML頁面應該有一個xml標籤,看起來像'')。 – Tgr 2010-09-02 05:17:57
<?= $test ?>
是相同的<?php echo $test; ?>
自PHP 5.4.0本<?= ... ?>
標籤始終可用,無論php.ini設置短標籤和short_open_tag的值爲指令只controls<? ... ?>
標籤。
另外,relevant answer。
通常建議不要使用短標籤,但僅適用於較長版本的模板中的簡單輸出,僅適用於更復雜的邏輯。這使得PHP代碼更容易混亂,更易讀。
我想你的意思是<?php echo $ test; ?>和=$test?> – Justin 2010-09-02 02:39:42
@Justin:很可能。有人可以關閉這個問題嗎? – polemon 2010-09-02 02:51:28
@polemon - 如果您認爲應該關閉,請提及重複/原因。 – 2010-09-02 04:46:37