我刚从Ubuntu PHP工作站开发环境转回Windows并使用xampp。我有一些代码,如下:
<input type="text" name="txtEmail" value="<?=$emailaddress;?>"/>
我发誓在我之前开发时,在文本框中显示变量。但是当我在Windows / xampp上加载页面时,它只是将文本放在文本框中的引号之间。相反,我最终将其更改为:
<input type="text" name="txtFirstName" value="<?php echo($firstname);?>" />
后者是有道理的,但我想我认为有速记或其他东西,我必须发疯,因为我确信第一种方式是在不同的环境中工作。
那么最好的方法是什么?
答案 0 :(得分:13)
让自己头疼,不要使用短标签。他们觉得很脏,他们不能在每个设置上工作,我认为他们可能会完全被逐步淘汰出局(虽然这可能是错的)。
即使你知道如何修复它们,每次你必须更换新服务器以使它们工作时,你仍然会感到烦躁。
编辑:是的,他们正在被贬低。 http://cubicspot.blogspot.com/2009/06/maximum-failure-php-6-deprecates-short.html
2017编辑:要添加一个重要的区别 - 始终启用<?=
“短回声”格式(请参阅下面的Dav的评论)。 <?
“短开”格式是另一回事。有关详细信息,请参阅Why are "echo" short tags permanently enabled as of PHP 5.4?
答案 1 :(得分:3)
有一个php.ini
指令可以控制它。确保你的设置为:
short_open_tag = On
答案 2 :(得分:0)
您可能必须在php.ini上启用短标记
最好的方法可能是<?php
更长的时间,因为其他人“不推荐”。
认为您可以在on SO
答案 3 :(得分:0)
执行内联命令时,不需要分号。我个人更喜欢短标签,输入<?php echo
会在一段时间后变老。
答案 4 :(得分:0)
是的,PHP开发人员正在弃用短标记,因为可能与XML冲突。 很快就将XHTML推向了基于SGML的HTML5。并且没有人使用PHP来输出XML ..