【问题标题】:Whats the difference between <?php functionhere(); ?> and <?=functionhere();?><?php functionhere(); 有什么区别? ?> 和 <?=functionhere();?>
【发布时间】:2011-07-27 00:22:13
【问题描述】:

当需要使用&lt;?= 或者为什么这个程序员会这样编码时,有人可以向我解释一下吗?我正在为SPBAS 创建一个第三方模块,我几乎想通了,我只是不知道我指定的两个不同选项的重要性。

提前致谢。

【问题讨论】:

标签: php


【解决方案1】:

&lt;?= functionhere(); ?&gt;&lt;?php echo functionhere(); ?&gt; 的简写。

【讨论】:

    【解决方案2】:

    &lt;?=something?&gt;&lt;?php echo something; ?&gt;的简写形式

    &lt;? something; ?&gt; 在哪里做任何something 应该做的事情

    edit:我将something 概括为任何 php 调用、函数字符串、数组、对象等。

    【讨论】:

    • 您的示例更有可能打印出通知,然后是字符串“something”;而最后一个例子什么都不做。
    • 好吧,如果something 是某种功能,那么它会做一些事情,呵呵
    • 当然。但仅当调用为 function()
    【解决方案3】:

    &lt;?php functionhere(); ?&gt; 不会打印出函数的结果,&lt;?=functionhere(); ?&gt; 会。

    【讨论】:

      【解决方案4】:

      这是回显后面的变量的快捷语法。效果和

      一样
      <?php echo $variable; ?> 
      

      <?php echo functionhere(); ?>
      

      在你的情况下。

      <?php functionhere(); ?>
      

      不会做任何事情。除非在函数内部打印出某些东西

      为此,必须启用 short_open_tag

      【讨论】:

        【解决方案5】:

        &lt;?= functionhere(); ?&gt; = &lt;?php echo functionhere(); ?&gt;

        &lt;? functionhere(); ?&gt; = &lt;?php functionhere(); ?&gt;

        它们被称为short tags,可以通过 PHP 配置启用。

        【讨论】:

          【解决方案6】:

          他们做同样的事情。唯一的区别是&lt;?php 是正确的语法。 一个是 echo 的短标签 - 但不应使用它,因为如果关闭此功能,它将输出您的代码。感谢您投反对票。

          【讨论】:

          • 他们不做同样的事情。
          • &lt;? 也是正确的语法
          • 我相信关于这个的争论是公开的......仅仅因为你可以做某事并不意味着你应该做。
          猜你喜欢
          • 1970-01-01
          • 2017-01-10
          • 2018-11-18
          • 1970-01-01
          • 2016-03-20
          • 2012-03-08
          • 2011-03-10
          • 2022-12-13
          • 2018-12-20
          相关资源
          最近更新 更多