男人,我可以發誓我在某處看到它,縮短<?php echo $var ?>
構造的有用語法,我認爲它是<?=$var?>
,但它不起作用。我已經搜索了大約半個小時,但無法找到再次告訴我的網站,我無法弄清楚正確的語法。
我是幻覺還是真的有這樣的語法?
<div style="background-color:<?=$backgroundColorFromPhp?>">
Hello <?=$name?>!
</div>
男人,我可以發誓我在某處看到它,縮短<?php echo $var ?>
構造的有用語法,我認爲它是<?=$var?>
,但它不起作用。我已經搜索了大約半個小時,但無法找到再次告訴我的網站,我無法弄清楚正確的語法。
我是幻覺還是真的有這樣的語法?
<div style="background-color:<?=$backgroundColorFromPhp?>">
Hello <?=$name?>!
</div>
PHP有php.ini中的short_open_tag
指令使此語法:
<? PHP code here; ?>
而非<?php PHP code here; ?>
。
這也使
<?= variable ?>
爲<? echo variable; ?>
的簡寫。該文檔指出,無論short_open_tag
設置如何,將啓用PHP 5.4.0 <?=
。
非常相似的是asp_tags
。它使傳統的ASP風格的語法:
<% PHP code here; %>
<%= variable %>
這哪裏是回聲語法速記最初來自。附註:在傳統的ASP <%= ...
將取代相當冗長形式:
<% Response.Write variable %>
當short_open_tag的值爲已啓用,
<?= $backgroundColorFromPhp ?>
爲
<?php echo $backgroundColorFromPhp; ?>
快捷然而,如果short_open_tag的值爲被禁用,
<?= $backgroundColorFromPhp ?>
也將被禁止(現有到PHP 5.4)。
你正在嘗試做應該做如下
<div style="background-color:<?=$backgroundColorFromPHP ?>">
Hello <?=$name ?>!
</div>
總之,離開後的一個空間的最後?
馬克
前,請嚴格避免呼應你的HTML內容。這只是一種糟糕的風格。始終保持php代碼與html元素分離的動態性。
這在我遇到的任何實現中都不是必需的。 – rockerest 2012-03-05 23:10:46
這裏唯一的區別是,結束標籤'?>'與變量名之間的空格是分隔的嗎?這並不能解決問題,'short_open_tags'是解決方案。 :)而那額外的空白並沒有使任何差異其實.. – 2012-03-05 23:10:59
是的,這是正確的,給出了一些注意事項。
首先,您必須有short tags on。根據我的經驗,這是默認配置,正如上面的文檔所述;
其次,您需要PHP解析文件。如果該文件是.html
文件,則不會由php引擎自動分析。您需要通過某種方式運行它,或者告訴php默認閱讀.html
文件。
最後,我喜歡將end statement
分號放在那裏(使其成爲<?=$name;?>
),但我相信這是一個優先選擇。
最解釋的答案,謝謝。 :)不明白爲什麼它沒有啓用,修改php.ini不起作用,但設置WAMP值。 *編輯*:Tomalek首先對他的評論,對不起。 ;) – 2012-03-05 23:13:23
@NiklasR完美公平,很樂意爲您服務! – rockerest 2012-03-06 01:34:36
在php中確實有類似這樣的語法,它只有在設置服務器使其工作時才起作用,這稱爲簡寫,但強烈建議不要使用此技術,因爲有些服務器在禁用它並可能提供某些不明身份的錯誤使用錯誤。我想我第一次看到這是在wordpress上使用。 )
無論ini設置如何,<?='都可以在PHP 5.4上運行 – Gordon 2012-03-06 09:09:12
感謝提供的信息@Gordon沒有想到他們已經將它包含在最新版本中,最終我真的認爲大多數人應該真的更新他們的服務器到這個新的版。 ;) – 2012-03-06 23:29:48
http://www.php.net/manual/en/ini.core.php#ini.short-open-tag和http: //www.php.net/manual/en/ini.core.php#ini.asp-tags – Tomalak 2012-03-05 23:04:46
Tomalak的評論是正確的答案! – 2012-03-05 23:08:33
@Tomalak我很擔心我的谷歌搜索技巧..:/您介意給出答案嗎? Thx – 2012-03-05 23:09:20