<! - ?php echo $ session_id? - >和<! - ?= $ session_id? - >之间的区别

时间:2009-01-12 19:33:18

标签: php

有没有特别的理由使用一个而不是另一个?我个人倾向于使用后者,因为它似乎对我来说更好。

7 个答案:

答案 0 :(得分:13)

他们做同样的事情,&lt;?=被称为短标签,是&lt;?php echo的简写。您必须确保启用短标记以使用&lt;?=表示法。

答案 1 :(得分:3)

据我所知,它们在功能上是等效的,除了第二个可以在配置中禁用,因此不便携。

答案 2 :(得分:1)

  

short_open_tag布尔

     

告诉短形式()   应该允许PHP的开放标记。   如果你想组合使用PHP   使用XML,您可以禁用此选项   为了使用内联。   否则,你可以用PHP打印它,   例如: 。如果禁用,   你必须使用PHP的长形式   打开标签()。

     

注意:该指令也会影响   速记

Source

答案 3 :(得分:0)

速记更清晰。它说,尽可能少的话:

  

“在这里,表达式得到了回应   没有其他事情发生。“

答案 4 :(得分:0)

在大量的php安装中禁用了短标签,所以我从不使用

<?=$my_var?> // Bad Portability

<?php echo $my_var; ?> // Good Portability!

答案 5 :(得分:0)

我认为<?php= $session_id; ?>工作正常,并且没有可移植性问题。

答案 6 :(得分:0)

只是一个插件问题。我几年前读过,由于安全问题,不推荐使用<??>。这是对的吗?